分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               

分类: Machine Learning2013-05-08 17:52 1415人阅读 评论(0) 收藏 举报

        最近在看Ng的深度学习教程,看到self-taught learning的时候,对一些概念感到很陌生。作为还清技术债的一个环节,用半个下午的时间简单搜了下几个名词,以后如果会用到的话再深入去看。

        监督学习在前一篇博客中讨论过了,这里主要介绍下迁移学习、自我学习。因为监督学习需要大量训练样本为前提,同时对训练样本的要求特别严格,要求训练样本与测试样本来自于同一分布。要是满足不了这要求咋办?那您看看下面几种学习方法能不能帮上忙吧。

  •  迁移学习 transfer learning

        有时候困扰大家的一个问题在于训练数据的标定。这将会耗费大量的人力与物力。另外,机器学习假设训练数据与测试数据服从相同的数据分布。然而许多情况下,这种同分布假设并不满足。通常可能发生的情况如训练数据过期,也就是好不容易标定的数据要被丢弃,而另外有一大堆新的数据要重新标定。迁移学习的目标是将从一个环境中学到的知识用来帮助新环境中的学习任务。讲白了,就是当前只有少量新的标记的数据,但是有大量旧的已标记的数据(甚至是其他类别的有效数据),这时通过挑选这些旧数据中的有效的数据,加入到当前的训练数据中,训练新的模型。用一句原话则是:

       Transfer learning is what happens when someone finds it much easier to learn to play chess having already learned to play checkers, or to recognize tables having already learned to recognize chairs; or to learn Spanish having already learned Italian。

       迁移学习的代表作是《Boosting for Transfer Learning》有关它的介绍可以看这里,我就不多说啥了,多的我也不懂。

  • 自我学习 self-taught learning 

        自我学习和半监督学习一样,当前手头上只有少量训练样本,但是周围手头上还有大量无标注样本。举一个经典的例子,分离大象和犀牛。对于监督学习来说,我们手头有大量大象的样本和犀牛的样本,接下来训练分类器,进行分类,大家都知道的。对于迁移学习,则是指我们手头上有大量羊的样本和马的样本(已标记),少量的大象和犀牛的样本,接下来就要从羊和马的样本中选出有效的样本分别加入到大象和犀牛的标记样本中,然后再用监督学习的方法训练分类器。而非监督学习,则是手上仅有少量大象和犀牛的已标记样本,另外有一堆大象和犀牛的没有标记的数据(注意它们中要么是大象要么是犀牛,没有其他物种)。半监督学习就是利用这些样本训练分类器,实现分类。而自我学习,同样是手上仅有少量大象和犀牛的已标记样本,另外有一大堆自然图像。所谓自然图像,就是有大象和犀牛的图片,还有各种其他物种的图片。自我学习比半监督学习更适合实际场景-----哪有一堆只有大象和犀牛的图片给你呢?而自然图像的来源更加广泛,可以从互联网上随便下载。

     

迁移学习 自我学习

       自我学习实现的方法如下图所示。首先通过未标注的自然图像提取一组特征(如稀疏字典,sparse coding,很神奇的一个东西,以后还会再研究)。这样任何一个标注和未标注的图像都可以用这组特征表示出来。由于每一个标注后的样本都被表示成了这些特征------注意这些特征捕捉了图像的高层结构,将表示后的标注的样本训练一个分类器进行分类。

 
参考资料:
1.   Boosting for transfer learning
2.   Self-taught learning: transfer learning from unlabeled data

 

迁移学习

分类: 数据挖掘2013-11-04 10:51 220人阅读 评论(0) 收藏 举报
作者: 薛贵荣

       在传统的机器学习的框架下,学习的任务就是在给定充分训练数据的基础上学习一个分类模型,然后利用这个学习到的模型对测试文档进行分类与预测。然而,机器学习算法在当前互联网应用研究中存在一个关键问题,即一些新出现的领域中大量训练数据非常稀缺。随着互联网的高速发展,Web 应用领域的发展非常快速,大量新的领域不断涌现,从传统的新闻,到网页,到图片,再到博客、播客等。首先,传统的机器学习需要对每个领域都标定大量训练数据,这将会耗费大量的人力与物力;而没有大量的标注数据,会使很多与学习相关研究与应用无法开展。其次,传统的机器学习假设训练数据与测试数据服从相同的数据分布。然而,在许多情况下,这种同分布假设并不满足。通常可能发生的情况,如训练数据过期。这往往需要去重新标注大量的训练数据以满足训练的需要,但标注新数据是非常昂贵的,需要大量的人力与物力。从另外一个角度看,如果有了大量的、在不同分布下的训练数据,完全丢弃这些数据也是非常浪费的。如何合理地利用这些数据就是迁移学习(transfer learning)主要解决的问题。迁移学习可以从现有的数据中迁移知识,用来帮助将来的学习。迁移学习的目标是将从一个应用场景中学到的知识,用来帮助新的应用场景中的学习任务。因此,迁移学习不会像传统机器学习做同分布假设。

在迁移学习方面的工作目前可以分为三个部分,即同构空间下基于实例的迁移学习、同构空间下基于特征的迁移学习与异构空间下的迁移学习。研究指出,基于实例的迁移学习有更强的知识迁移能力,基于特征的迁移学习具有更广泛的知识迁移能力,而异构空间的迁移具有广泛的学习与扩展能力。这几种方法各有千秋。

1  同构空间下基于实例的迁移学习

基于实例的迁移学习的基本思想是,尽管辅助训练数据和源训练数据或多或少会有不同,但是辅助训练数据中应该还会存在一部分比较适合用来训练一个有效的分类模型,并且适应测试数据。于是,学习的目标就是从辅助训练数据中找出那些适合测试数据的实例,并将这些实例迁移到源训练数据的学习中。在基于实例的迁移学习方面,文献 [1] 推广了传统 AdaBoost 算法,提出一种具有迁移能力的 Boosting 算法——Tradaboosting,使之具有迁移学习的能力,从而能够最大限度地利用辅助训练数据来帮助目标的分类。其中关键想法是,利用 Boosting 的技术过滤辅助数据中那些与源训练数据最不像的数据。其中,Boosting 的作用是建立一种自动调整权重的机制,于是重要的辅助训练数据的权重将会增加,不重要的辅助训练数据的权重将会减小。调整权重之后,这些带权重的辅助训练数据将会作为额外的训练数据,与源训练数据一起提高分类模型的可靠度。

基于实例的迁移学习只能发生在源数据与辅助数据非常相近的情况下。但是,当源数据和辅助数据差别比较大时,基于实例的迁移学习算法往往很难找到可以迁移的知识。即便有时源数据与目标数据在实例层面上并没有共享一些公共的知识,它们可能会在特征层面上有一些交集。因此学者们研究了基于特征的迁移学习,讨论的是如何利用特征层面上公共的知识进行学习的问题。

2  同构空间下基于特征的迁移学习

在基于特征的迁移学习研究方面,多种学习算法被提出,如 CoCC 算法 [2]、TPLSA 算法 [3]、谱分析算法 [4] 与自学习聚类算法 [5] 等。这些算法的基本思想是使用互聚类算法同时对源数据与辅助数据进行聚类,得到一个共同的特征表示,这个新的特征表示优于只基于源数据的特征表示。通过把源数据表示在这个新空间里,以实现迁移学习。基于特征的有监督迁移学习与基于特征的无监督迁移学习都可以应用这个思想解决。

2.1  基于特征的有监督迁移学习

基于特征的有监督迁移学习方面的工作的一个例子是基于互聚类的跨领域分类 [2],这个工作考虑的问题是:当给定一个新的、不同的领域,标注数据及其稀少时,如何利用原有领域中含有的大量标注数据进行迁移学习的问题。在基于互聚类的跨领域分类这个工作中,跨领域分类问题定义了一个统一的信息论形式化公式,其中基于互聚类的分类问题转化成对目标函数的最优化问题。在文献 [2] 的模型中,目标函数定义为源数据实例、公共特征空间与辅助数据实例间互信息的损失。

2.2  基于特征的无监督迁移学习——自学习聚类

自学习聚类算法 [5] 属于基于特征的无监督迁移学习方面的工作。其考虑的问题是现实中可能有标记的辅助数据都难以得到,在这种情况下如何利用大量无标记数据辅助数据进行迁移学习的问题。自学习聚类的基本思想是通过同时对源数据与辅助数据进行聚类得到一个共同的特征表示,而这个新的特征表示由于基于大量的辅助数据,所以会优于仅基于源数据而产生的特征表示,从而对聚类产生帮助。

上面提出的这两种学习策略解决的都是源数据与辅助数据在同一特征空间内的基于特征的迁移学习问题。当源数据与辅助数据所在的特征空间中不同时,学者们还研究了跨特征空间的基于特征的迁移学习,它也属于基于特征的迁移学习的一种。

3  异构空间下的迁移学习——翻译学习

翻译学习 [6-7] 致力于解决源数据与测试数据分别属于两个不同特征空间下的情况。翻译学习的方法基于使用那些有两个视角的数据来构建沟通两个特征空间的桥梁。虽然这些多视角数据可能不一定能作为分类用的训练数据,但是,它们可以构建翻译器。通过这个翻译器,可以结合与扩展各种传统的学习算法,让它们有跨特征领域学习的能力。例如,文献 [6] 使用近邻算法和特征翻译结合在一起用一个统一的语言模型进行学习与分类;文献 [8] 扩展了传统的贝叶斯分类的框架,通过引入由翻译器利用文本领域内的知识进行图像分类;文献 [9] 将图文特征翻译器与文本数据同时看成对本领域特征的约束,扩展了 PLSA 算法进行聚类。

翻译学习除了在如分类聚类问题的传统机器学习领域中有很多应用之外,在网络数据挖掘中也有广阔的应用前景。使用翻译学习,可以在不同的特征空间之间进行知识的迁移。例如在互联网在线广告领域,文献 [10] 提出了在没有任何辅助文本信息的情况下,对图像依照它的内容进行广告的问题,称为视觉内容关联广告推荐(visual contextual advertising)问题。针对这个问题,文献 [10] 在之前的研究基础上,继续使用互联网上大量存在的共同出现数据作为桥梁,用一个特征映射(feature mapping)建立视觉图像空间与文本空间的关系,然后通过把图片“翻译”到文本空间,同时利用一个统一的生成模型将“翻译”与“推荐广告”两部分合成一体,最后达到文本广告的推送。

4  结束语

迁移学习是一个新兴的机器研究领域,其研究与应用都是处于快速发展阶段。对迁移学习的研究必将大大提高学习算法的普适性,推动机器学习的更广泛应用。

参考文献:

[1]Dai Wenyuan, Yang Qiang, Xue Guirong,et al. Boosting for transfer learning[C]//The Twenty-Fourth International Conference on Machine Learning (ICML 2007).Corvallis, Oregon:[s.n.], 2007:193-200.

[2]Dai Wenyuan, Xue Guirong, Yang Qiang, et al. Co-clustering based classification for out-of-domain documents[C]//The Thirteenth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD 2007). San Jose, California:[s.n.], 2007:210-219.

[3]Xue Guirong, Dai Wenyuan, Yang Qiang, et al. Topic-bridged PLSA for cross-domain text classification[C]//The Thirty-first International ACM SIGIR Conference on Research and Development on Information Retrieval (SIGIR 2008). Singapore:[s.n.], 2008:627-634.

[4]Ling Xiao, Dai Wenyuan, Xue Guirong, et al. Spectral domain-transfer learning[C]//The Fourteenth ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD 2008). Las Vegas, Nevada:[s.n.], 2008:488-496.

[5]Dai Wenyuan, Yang Qiang, Xue Guirong, et al. Self-taught clustering[C]//The Twenty-Fifth International Conference on Machine Learning (ICML 2008). Helsinki:[s.n.], 2008:200-207.

[6]Dai Wenyuan, Chen Yuqiang, Xue Guirong, et al. Translated learning: transfer learning across different feature spaces[C]// Advances in Neural Information Processing Systems 21 (NIPS 2008). Vancouver, British Columbia:[s.n.], 2008.

[7]Ling Xiao, Xue Guirong, Dai Wenyuan, et al . Can Chinese Web pages be classified with English data source?[C]//Seventeenth International World Wide Web Conference (WWW 2008). Beijing:[s.n.], 2008:969-978.

[8]Lin Yuan, Chen Yuqiang, Xue Guirong et al. Text-aided image classication: using labeled text from Web to help image classication[C]//The 12th Asia-Pacific Web Confernence (APWeb 2010). Busan:[s.n.], 2010:267-273.

[9]Yang Qiang, Chen Yuqiang, Xue Guirong, et al. Heterogeneous transfer learning for image clustering via the social Web[C]// The Conference of the 47th Annual Meeting of the ACL (ACL 2009).Suntec:[s.n.], 2009:1-9.

[10]Chen Yuqiang, Jin Ou, Xue Guirong, et al. Visual contextual advertising: bringing textual advertisements to images[C]// Proceedings of The 24th AAAI Conference on Artificial Intelligence (AAAI 2010). Atlanta:[s.n.], 2010.


作者简介薛贵荣,博士,阿里云计算公司资深总监,中国人工智能学会会员;主要研究方向为互联网搜索、机器学习、云计算。E-mail:[email protected]



 
           

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow

迁移学习 自我学习
你好! 这是你第一次使用 **Markdown编辑器** 所展示的欢迎页。如果你想学习如何使用Markdown编辑器, 可以仔细阅读这篇文章,了解一下Markdown的基本语法知识。

新的改变

我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

  1. 全新的界面设计 ,将会带来全新的写作体验;
  2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
  3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
  4. 全新的 KaTeX数学公式 语法;
  5. 增加了支持甘特图的mermaid语法1 功能;
  6. 增加了 多屏幕编辑 Markdown文章功能;
  7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
  8. 增加了 检查列表 功能。

功能快捷键

撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G

合理的创建标题,有助于目录的生成

直接输入1次#,并按下space后,将生成1级标题。
输入2次#,并按下space后,将生成2级标题。
以此类推,我们支持6级标题。有助于使用TOC语法后生成一个完美的目录。

如何改变文本的样式

强调文本 强调文本

加粗文本 加粗文本

标记文本

删除文本

引用文本

H2O is是液体。

210 运算结果是 1024.

插入链接与图片

链接: link.

图片: 迁移学习 自我学习

带尺寸的图片: 迁移学习 自我学习

当然,我们为了让用户更加便捷,我们增加了图片拖拽功能。

如何插入一段漂亮的代码片

博客设置页面,选择一款你喜欢的代码片高亮样式,下面展示同样高亮的 代码片.

// An highlighted block var foo = 'bar'; 

生成一个适合你的列表

  • 项目
    • 项目
      • 项目
  1. 项目1
  2. 项目2
  3. 项目3
  • 计划任务
  • 完成任务

创建一个表格

一个简单的表格是这么创建的:

项目 Value
电脑 $1600
手机 $12
导管 $1

设定内容居中、居左、居右

使用:---------:居中
使用:----------居左
使用----------:居右

第一列 第二列 第三列
第一列文本居中 第二列文本居右 第三列文本居左

SmartyPants

SmartyPants将ASCII标点字符转换为“智能”印刷标点HTML实体。例如:

TYPE ASCII HTML
Single backticks 'Isn't this fun?' ‘Isn’t this fun?’
Quotes "Isn't this fun?" “Isn’t this fun?”
Dashes -- is en-dash, --- is em-dash – is en-dash, — is em-dash

创建一个自定义列表

Markdown
Text-to-HTML conversion tool
Authors
John
Luke

如何创建一个注脚

一个具有注脚的文本。2

注释也是必不可少的

Markdown将文本转换为 HTML

KaTeX数学公式

您可以使用渲染LaTeX数学表达式 KaTeX:

Gamma公式展示 Γ(n)=(n1)!nN\Gamma(n) = (n-1)!\quad\forall n\in\mathbb N 是通过欧拉积分

Γ(z)=0tz1etdt . \Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,.

你可以找到更多关于的信息 LaTeX 数学表达式here.

新的甘特图功能,丰富你的文章

gantt
        dateFormat  YYYY-MM-DD
        title Adding GANTT diagram functionality to mermaid
        section 现有任务
        已完成               :done,    des1, 2014-01-06,2014-01-08
        进行中               :active,  des2, 2014-01-09, 3d
        计划一               :         des3, after des2, 5d
        计划二               :         des4, after des3, 5d
  • 关于 甘特图 语法,参考 这儿,

UML 图表

可以使用UML图表进行渲染。 Mermaid. 例如下面产生的一个序列图::

张三李四王五你好!李四, 最近怎么样?你最近怎么样,王五?我很好,谢谢!我很好,谢谢!李四想了很长时间,文字太长了不适合放在一行.打量着王五...很好... 王五, 你怎么样?张三李四王五

这将产生一个流程图。:

链接
长方形
圆角长方形
菱形
  • 关于 Mermaid 语法,参考 这儿,

FLowchart流程图

我们依旧会支持flowchart的流程图:

  • 关于 Flowchart流程图 语法,参考 这儿.

导出与导入

导出

如果你想尝试使用此编辑器, 你可以在此篇文章任意编辑。当你完成了一篇文章的写作, 在上方工具栏找到 文章导出 ,生成一个.md文件或者.html文件进行本地保存。

导入

如果你想加载一篇你写过的.md文件或者.html文件,在上方工具栏可以选择导入功能进行对应扩展名的文件导入,
继续你的创作。


  1. mermaid语法说明 ↩︎

  2. 注脚的解释 ↩︎

相关文章:

猜你喜欢
  • 2021-07-10
  • 2021-09-02
  • 2021-12-04
相关资源
相似解决方案