zoukankan      html  css  js  c++  java
  • 【迁移学习】2010-A Survey on Transfer Learning

    资源:http://www.cse.ust.hk/TL/

    image


    简介:

    一个例子:

           关于照片的情感分析.

           源:比如你之前已经搜集了大量N种类型物品的图片进行了大量的人工标记(label),耗费了巨大的人力物力,构建了源情感分类器(即输入一张照片,可以分析出照片的情感).注:这里的情感不是指人物的情感,而是指照片中传达出来的情感,比如这张照片是积极的还是消极的.

           目标:因为不同类型的物品,他们在源数据集中的分布也是不同的,所以为了维护一个很好的分类器性能,经常需要增加新的物品.传统的方式是搜集大量N+1号物品的照片进行大量的人工标记.建立模型.而迁移学习要做的是借鉴之前已经训练好的针对N中类型的分类器,来训练这个N+1号分类器.这样就节省了大量的人工标注的成本.

    与传统进行比较:

    image


    几个概念:

    (1)domain D:

    包含一个特征空间X和一个边缘概率分布P(X)image

    image

    如果两个域不同,那么他们可能有不同的特征空间和边缘概率分布.

    (2)task T:

    给定一个域D,一个task包含两部分:一个标记空间y和一个目标预测函数f().imageimage

    f()可以用于预测一个新的instance x的label.f(x)可以表示为image

    迁移学习:给定一个源域DS和一个学习任务(task)TS,一个目标域DT和一个目标学习任务TT.迁移学习旨在利用DS和TS中的knowledge来提高目标预测函数f()在DT中的性能,其中DS≠DT或TS≠TT.


    几个问题:

    (1)迁移什么?

    什么样的knowledge可以拿来迁移?      答:源域和目标域有相关性的才可以拿来迁移.

    image

    可以发现,我们把迁移学习的learning settings分为3类:

    inductive transfer learning(归纳迁移学习), transductive transfer learning(直推式迁移学习), and unsupervised transfer learning(无监督迁移学习).

    image

    a.inductive transfer learning(归纳迁移学习)

    研究较多

    分为两类:

    第一类:

    inductive transfer learning:通过把knowledge从源task迁移到目标task,以此在目标task中取得高性能

    multitask learning : 同时学习目标和源task

    第二类:

    源域和目标域的标记空间不同

    b.transductive transfer learning(直推式迁移学习)

    c.unsupervised transfer learning(无监督迁移学习)

    研究较少

    image

    image

    image

    (2)怎么迁移?

    (3)什么时候迁移?


    inductive transfer learning(归纳迁移学习)

    定义:给定一个源域DS和一个学习任务TS,一个目标域DT和一个学习任务TT.归纳迁移学习旨在通过使用DS和TS中的知识来提高目标预测函数的性能,其中TS≠TT.

    目标域中需要少量的标记好的数据作为训练集.

    (1)迁移instances中的knowledge

    尽管源域中并非所有数据都可以被利用,但是,还是可以提取出其中的部分有标记的数据用于目标域.

    (2)迁移feature representative中的knowledge

    目的:找到好的特征代表,以此来减小源域与目标域中的差异.不同的源域数据类型,找到这些好的特征代表的策略也是不同的.

    如果源域中有大量有效的带标记的数据,监督学习方法可以用于构建一个特征代表.

    如果没有,则采用无监督学习方法来构造特征代表.

    (3)迁移Parameters中的knowledge

    有相关的task的不同模型之间应该共享一些参数或超参数的先验分布.

    不同的域,参数不同.在目标域中,损失函数需要设定更大的权重.

    (4)迁移Relational中的knowledge

    比如数据网和社会网络.尝试将源域中的relationship转换到目标域中.

    方法: statistical relational learning techniques


    transductive transfer learning(直推式迁移学习)

    源task和目标task是一样的,域不同.

    利用部分目标数据来获得边缘概率.

    定义:给定一个源域DS和相应的学习taskTS,一个目标域DT和相应的学习task.直推式学习旨在提高DT中的目标预测函数f(),利用DS和TS中的knowledge.其中DS≠DT且TS=TT.此外,训练时需要一些无标记的目标域数据.

    (1)迁移instances中的knowledge

    方法:重要性抽样:通过最小化期望风险来学习到模型中的最优参数

    (2)迁移feature representative中的knowledge

    利用目标域中的无标记数据来提取一些相关的特征,以此来减小域的差异性.


    unsupervised transfer learning(无监督迁移学习)

    定义:给定一个源域DS和相应的学习taskTS,一个目标域DT和相应的学习task.直推式学习旨在提高DT中的目标预测函数f(),利用DS和TS中的knowledge.其中TS≠TT且YS和YT并不明显.

    在源域和目的域中都没有标记的数据.

    (1)迁移feature representative中的knowledge

    以自学习聚类(self-taught  clustering)为例,旨在通过源域中大量的无标记的数据,在目标域中对少量的无标记的数据进行聚类,


    迁移学习的边界和消极迁移学习

    如果两个域之间没有半毛钱关系,那么这种迁移的效果会很差.


    迁移学习的应用

    1. 自然语言处理
    2. 情绪分类问题
    3. 图片分类问题
    4. wifi定位

    迁移学习的几个数据集和工具

    S

  • 相关阅读:
    ajax的一些知识
    前端性能优化汇总
    jquery实现一些小动画二
    python简单日志处理
    逆波兰式---C实现
    java常见异常
    Hive与HBase集成及常见问题解决
    SQL for HBase
    Demystifying the Skip Scan in Phoenix
    Difference between DDL, DML and DCL commands
  • 原文地址:https://www.cnblogs.com/XBWer/p/4569493.html
Copyright © 2011-2022 走看看