摘要:

大白话解释字典学习,分享第五个月的学习过程,人生感悟,最后是自问自答。

目录:

1.字典学习(Dictionary Learning,DL)

2.学习过程

3.自问自答

内容:

1.字典学习(Dictionary Learning,DL)

——如果把“0”,“1”看做是字典中的“字”,万事万物皆可用字典表示。

对于汉字来说,只含“0”,“1”字典就显得过于简单,《康熙字典》47035个汉字又臃肿了些,《现代汉语常用字表》就3500个汉字似乎刚刚好,这样我们就能把随便一篇文章表示成3500个元素组成的向量a。当然了,这个向量大部分元素可能都是0,我们把向量a叫做文章的稀疏表达。

然而在现实生活中,除了各种语言的字典,也没听说过其它字典了。但是我们开篇就夸下了海口,万事万物皆可用字典表示,现在来了一批图片X,怎么学它们的字典D(Dictionary)呢?这就是所谓的字典学习,也可以叫做稀疏表达。

我们只知道图片X,字典D和稀疏表达A是未知的,这时候我们可以使用KSVD算法交替求解A和D,即固定D求A,固定A逐列更新D,直到D不改变。

字典学习是一个比较容易理解的思想,通常要和其他的一些方法结合,应用在不同的场景,如多任务、多目标、多步学习等。值得注意的是,我阅读的几篇文章都不止学习一个字典,即既要学习共享字典,又要学习独立字典,充分发掘源域S和目标域T组合之间的关系(如S-S, S-T, T-T),再结合现在比较流行的深度学习会取得比较好的实验效果。

2.学习过程

这个月主要就在看老师给的文章,并在组会的时候做了汇报,说实话,看论文对我来说不容易,在汇报的过程中被问到一些细节的东西解释不清,有些东西只有自己亲身经历过才会明白。至此我论文阅读分有了更深刻的理解。首先是语言关,论文是用英文写的,首先得把论文读顺,其中涉及的专有名词得翻译得当。其次是理解思想和实验设置。最后是公式推导、优化求解和代码实现。除此以外,论文思想方法的由来,论文写作团队的最新进展也是需要了解的。

最近导师让我们了解一下对抗域适应和部分迁移学习相关的内容,我选了这篇 [Partial Adversarial Domain Adaptation-eccv18],希望能在学期末组会的时候能对这篇文章和涉及的知识点有系统深入地认识。最起码要比这次组会的表现强!

3.自问自答

Q1:如何有系统的学习一个新方向?

A1:首先,找到这个方向的国内的学术带头人。然后,找到他学生的硕博论文,一般来说硕博论文会比较系统的介绍这个方向,对于阅读和理解外文资料有很大的帮助。

Q2:如何面对论文中看不懂的公式?

A2:如果数学基础薄弱,就尽可能地尝试去了解公式的物理意义,最起码每一个符号的含义要了如指掌。最好挑选一篇附有代码的文章去实践,听说,只要代码理解了,文章以及公式自然就理解了。

Q3:arXiv是干嘛的?

A3:读音如archive(档案),英 [ˈɑ:kaɪv],美 [ˈɑrkaɪv]。为了防止自己的idea在论文被收录前被别人剽窃,我们会将预稿上传到arxiv作为预收录,因此这就是个可以证明论文原创性(上传时间戳)的文档收录网站。由于arXiv上的文章多半都会投稿到学术期刊,作者对文章多半保持严谨态度(文章质量良莠不齐,如果是初学者,最好请老师帮忙看一下)。

Q4:第一次开组会讲论文是什么体验?

A4:卡壳严重,被问到公式的时候讲不清楚。老师说,读一篇论文不是说简单读一读就完事了,要把论文变成自己的东西,以后见到了才能想得起来,用得起来。我相信有很多人和我一样,既想追求广度,又想追求深度,但是经过这5个月的探索,我认为需要把一样东西学精。

学习人工智能的第五个月[字典学习[Dictionary Learning,DL]]的更多相关文章

  1. 学习人工智能的第六个月[深度学习[Deep Learning,DL]]

    这个月阅读了论文[Partial Adversarial Domain Adaptation-eccv18],文章着眼于源域标签空间包含目标域标签空间的场景,在域对抗神经网络的基础上提出了部分对抗域适 ...

  2. python学习笔记:第五天( 字典)

    Python3 字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格 ...

  3. Dictionary Learning(字典学习、稀疏表示以及其他)

    第一部分 字典学习以及稀疏表示的概要 字典学习(Dictionary Learning)和稀疏表示(Sparse Representation)在学术界的正式称谓应该是稀疏字典学习(Sparse Di ...

  4. 字典学习(Dictionary Learning)

    0 - 背景 0.0 - 为什么需要字典学习? 这里引用这个博客的一段话,我觉得可以很好的解释这个问题. 回答这个问题实际上就是要回答“稀疏字典学习 ”中的字典是怎么来的.做一个比喻,句子是人类社会最 ...

  5. 我的MYSQL学习心得(十五) 日志

    我的MYSQL学习心得(十五) 日志 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  6. 别人的的MYSQL学习心得(十五) 日志

    我的MYSQL学习心得(十五) 日志 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...

  7. python3.4学习笔记(二十五) Python 调用mysql redis实例代码

    python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...

  8. 我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗

    文章背景,回答提问:我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗? 我的建议是这样:1. 不要辞职.首先说,你对整个开发没有一个简单的了解,或一个系统的入门学习.换句 ...

  9. 20145330第五周《Java学习笔记》

    20145330第五周<Java学习笔记> 这一周又是紧张的一周. 语法与继承架构 Java中所有错误都会打包为对象可以尝试try.catch代表错误的对象后做一些处理. 使用try.ca ...

随机推荐

  1. linux 学习(三) php相关

    五 php相关 配置文件位置 /etc/apache2/apache2.conf 1禁止列举目录 sudo vi /etc/apache2/sites-enabled/000-default 删除Op ...

  2. 关于刷新同级layer弹框的解决方法

    在项目中遇到这种情况: 父页面点击详情,layer.open一个子页面A,子页面里面又存在操作按钮,点击使用parent.layer.open在打开一个子页面B,子页面B点击提交操作成功要刷新子页面A ...

  3. 菜鸟笔记 -- Chapter 6.2.6 内部类

    6.2.6  内部类 在权限修饰符中,我们已经见过内部类了,但我们看到的只是冰山一角,这节我们详细介绍一下内部类,内部类可以分为成员内部类,局部内部类,匿名内部类,静态内部类.下面我们来讲解一下,在讲 ...

  4. 字段中有空的时候 进行逻辑运算,mysql 与 oracle 处理函数IFNULL() 与 nvl() ,选取NULL 值 。

    mySQL数据库: SELECT id_p,IFNULL(math,0)+IFNULL(english,0) 总分 from mytest_brian1 Oracle 数据库: select  id_ ...

  5. Hibernate学习第一天

    Hibernate框架第一天 今天任务 1. 使用Hibernate框架完成对客户的增删改查的操作 教学导航 1. 能够说出Hibernate的执行流程 2. 能够独立使用Hibernate框架完成增 ...

  6. 解方程(hash,秦九韶算法)

    题目描述 已知多项式方程: a0+a1x+a2x2+⋯+anxn=0 求这个方程在 [1,m]内的整数解(n 和 m 均为正整数). 输入输出格式 输入格式: 共 n+2 行. 第一行包含 2个整数 ...

  7. poj_2084_Game of Connections

    This is a small but ancient game. You are supposed to write down the numbers 1, 2, 3, . . . , 2n - 1 ...

  8. MySQL——用户与密码

    mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码.通过下面的方式找到root默认密码,然后登录mysql进行修改: grep 'temporary p ...

  9. oracle的事务隔离级别和读一致性

    oracle提供了三个隔离级别: 1.读提交 ,简而言之只能读取语句开始执行前提交的数据 2.串行,这个好理解,就是事务串行运行,避免经典的三个场景-脏读.不可重复读.幻读. 3.只读,oracle已 ...

  10. Percona-Tookit工具包之pt-show-grants

      Preface       User privileges regulation is pretty important in DBAs routine job.As we all know,it ...