学习人工智能的第五个月[字典学习[Dictionary Learning,DL]]
摘要:
大白话解释字典学习,分享第五个月的学习过程,人生感悟,最后是自问自答。
目录:
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]]的更多相关文章
- 学习人工智能的第六个月[深度学习[Deep Learning,DL]]
这个月阅读了论文[Partial Adversarial Domain Adaptation-eccv18],文章着眼于源域标签空间包含目标域标签空间的场景,在域对抗神经网络的基础上提出了部分对抗域适 ...
- python学习笔记:第五天( 字典)
Python3 字典 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格 ...
- Dictionary Learning(字典学习、稀疏表示以及其他)
第一部分 字典学习以及稀疏表示的概要 字典学习(Dictionary Learning)和稀疏表示(Sparse Representation)在学术界的正式称谓应该是稀疏字典学习(Sparse Di ...
- 字典学习(Dictionary Learning)
0 - 背景 0.0 - 为什么需要字典学习? 这里引用这个博客的一段话,我觉得可以很好的解释这个问题. 回答这个问题实际上就是要回答“稀疏字典学习 ”中的字典是怎么来的.做一个比喻,句子是人类社会最 ...
- 我的MYSQL学习心得(十五) 日志
我的MYSQL学习心得(十五) 日志 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- 别人的的MYSQL学习心得(十五) 日志
我的MYSQL学习心得(十五) 日志 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- python3.4学习笔记(二十五) Python 调用mysql redis实例代码
python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...
- 我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗
文章背景,回答提问:我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗? 我的建议是这样:1. 不要辞职.首先说,你对整个开发没有一个简单的了解,或一个系统的入门学习.换句 ...
- 20145330第五周《Java学习笔记》
20145330第五周<Java学习笔记> 这一周又是紧张的一周. 语法与继承架构 Java中所有错误都会打包为对象可以尝试try.catch代表错误的对象后做一些处理. 使用try.ca ...
随机推荐
- 还在占用存储的进程lsof grep deleted;
查看僵尸进程 lsof grep deleted; 用于查看已经停止但还在占用存储的进程
- jquery mobile 移动web(5)
有序列表 <div data-role="content"> <ol data-role="listview" data-theme=&quo ...
- IPC进程间通信---消息队列
消息队列 消息队列:消息队列是一个存放在内核中的消息链表,每个消息队列由消息队列标识符标识.与管道不同的是消息队 列存放在内核中,只有在内核重启(即操作系统重启)或者显式地删除一个消息队列时,该消息队 ...
- C++中vector,set,map自定义排序
一.vector排序 vector支持cmp,就类似数组,可以直接sort. #include <iostream> #include <algorithm> #include ...
- Pro Git 学习笔记
Pro Git 学习笔记 文档地址:Pro Git原文地址:PRO GIT 学习笔记 git常见命令 1.Git起步 初次运行Git前的配置 用户信息 git config --global user ...
- ubuntu系統如何啟動root用戶登陸?
之前分享過關於這個問題的文章,現在自己在分享一個關於這個問題的文章給大家.為了學習Linux,一氣之下把win10的換成了ubuntu的系統.安裝就不給大家介紹了(網上很多教程). 在我們安裝好之後, ...
- 使用docker安装和运行常用的数据库和中间件
mysql: docker pull mysql: docker run --name mysql -p : -v /usr/share/zoneinfo/Asia/Shanghai:/etc/loc ...
- Mina 组件介绍之 IoBuffer
在Java NIO 中,ByteBuffer通常作为通信中传递消息的载体.而在Mina中,采用了IoBuffer代替ByteBuffer.Mina给出了不用ByteBuffer的两个主要理由: 1. ...
- 出现java.lang.NoSuchMethodError错误的原因
作为Java开发者我们都遇到过java.lang.NoSuchMethodError错误,究其根源,是JVM的"双亲委托模型"引发的问题.如果在类路径下放置了多个不同版本的类包,如 ...
- Node.js(一)----安装
1.下载 地址 https://nodejs.org/en/download/ 注: 系统为ubuntu 下载的源码包 tar.gz 或者 wget https://nodejs.org/dist/v ...