发新话题
打印

深度学习

乐乎设计,乐乎生活~

TOP

乐乎设计,乐乎生活~

TOP

 许多Linux用户在安装系统的时候,并没有分配/var 分区,而在安装Docker后才发现,它的默认存放位置是在 /var/lib/docker。因此导致了Docker在运行的很慢
乐乎设计,乐乎生活~

TOP

http://blog.csdn.net/qq_31494411 ... ionNum=10&fps=1
windows下docker安装tensorflow利用Jupyter编程

命令和之前的差不多
只不过加入了转发接口
这时候在浏览器中输入http://192.168.99.XXX:8888/
根据自己虚拟机的IP来输入即可
乐乎设计,乐乎生活~

TOP

Docker安装jupyter notebook
时间:2016-03-22来源:cnblogs.com/lutingting/ 作者:纸鸢spring

1.利用image运行一个container

sudo docker run -it --net=host tingting

--net=host:让container可以上网,安装原来的sudo docker run -it tingting方法安装是不能联网的,不知道为什么,加入了--net=host后,container就可以联网了,但不知道还有其他更好的办法不,暂且使用这个方法
tingting:是image的名字


2.在container内安装jupyter notebook

pip install jupyter notebook

jupyter notebook是jupyter的名字


3.commit新的镜像

sudo docker commit --change='CMD jupyter notebook' serene_carson tingtingNew

serene_carson:正在运行的container的名字
tingtingNew:想要保存的新的image的名字


4.利用新的image生成新的container

sudo docker run -it --net=host -v /home/tingting/Dropbox/code/craterDetection/docker:/root/workspace tingtingNew

注:

这里利用-v命令将本地的文件夹与docker中的文件夹关联,其中,/home/tingting/Dropbox/code/craterDetection/docker:为本地文件夹;/root/workspace:为docker中的文件夹;该命令可以将/home/tingting/Dropbox/code/craterDetection/docker文件夹映射到/root/workspace文件夹
tingtingNew为刚刚安装了jupyter notebook的image


5.打开jupyter,利用浏览器输入网址:localhost:8888

注:不知道为什么,本机安装的jupyter地址没法获取,所以这里使用了localhost

如何获取localhost的地址?

打开一个新的terminal,查看container的地址:sudo docker inspect clever_bohr | grep IPAddress

这里的clever_bohr为该正在运行的container的名字,例子如下:

在浏览器中输入:172.17.0.6:8888
乐乎设计,乐乎生活~

TOP

Ubuntu中的许多操作在终端(Terminal)中十分的快捷,记住一些快捷键的操作更得心应手。在Ubuntu中打开终端的快捷键是Ctrl+Alt+T。其他的一些常用的快捷键如下:
快捷键        功能
Tab         自动补全
Ctrl+a         光标移动到开始位置
Ctrl+e         光标移动到最末尾
Ctrl+k         删除此处至末尾的所有内容
Ctrl+u         删除此处至开始的所有内容
Ctrl+d         删除当前字符
Ctrl+h         删除当前字符前一个字符
Ctrl+w         删除此处到左边的单词
Ctrl+y         粘贴由Ctrl+u, Ctrl+d, Ctrl+w删除的单词
Ctrl+l         相当于clear,即清屏
Ctrl+r         查找历史命令
Ctrl+b         向回移动光标
Ctrl+f         向前移动光标
Ctrl+t         将光标位置的字符和前一个字符进行位置交换
Ctrl+&         恢复 ctrl+h 或者 ctrl+d 或者 ctrl+w 删除的内容
Ctrl+S         暂停屏幕输出
Ctrl+Q         继续屏幕输出
Ctrl+Left-Arrow         光标移动到上一个单词的词首
Ctrl+Right-Arrow         光标移动到下一个单词的词尾
Ctrl+p         向上显示缓存命令
Ctrl+n         向下显示缓存命令
Ctrl+d         关闭终端
Ctrl+xx         在EOL和当前光标位置移动
Ctrl+x@         显示可能hostname补全
Ctrl+c         终止进程/命令
Shift+上或下         终端上下滚动
Shift+PgUp/PgDn         终端上下翻页滚动
Ctrl+Shift+n         新终端
alt+F2         输入gnome-terminal打开终端
Shift+Ctrl+T         打开新的标签页
Shift+Ctrl+W         关闭标签页
Shift+Ctrl+C         复制
Shift+Ctrl+V         粘贴
Alt+数字         切换至对应的标签页
Shift+Ctrl+N         打开新的终端窗口
Shift+Ctrl+Q         管壁终端窗口
Shift+Ctrl+PgUp/PgDn         左移右移标签页
Ctrl+PgUp/PgDn         切换标签页
F1         打开帮助指南
F10         激活菜单栏
F11         全屏切换
Alt+F         打开 “文件” 菜单(file)
Alt+E         打开 “编辑” 菜单(edit)
Alt+V         打开 “查看” 菜单(view)
Alt+S         打开 “搜索” 菜单(search)
Alt+T         打开 “终端” 菜单(terminal)
Alt+H         打开 “帮助” 菜单(help)

另外一些小技巧包括:在终端窗口命令提示符下,连续按两次 Tab 键、或者连续按三次 Esc 键、或者按 Ctrl+I 组合键,将显示所有的命令及工具名称。Application 键即位置在键盘上右 Ctrl 键左边的那个键,作用相当于单击鼠标右键。



===== Terminal终端 =====
CTRL + ALT + T: 打开终端
TAB: 自动补全命令或文件名
CTRL + SHIFT + V: 粘贴(Linux中不需要复制的动作,文本被选择就自动被复制)
CTRL + SHIFT + T: 新建标签页
CTRL + D: 关闭标签页
CTRL + L: 清楚屏幕
CTRL + R + 文本: 在输入历史中搜索
CTRL + A: 移动到行首
CTRL + E: 移动到行末
CTRL + C: 终止当前任务
CTRL + Z: 把当前任务放到后台运行(相当于运行命令时后面加&)
~: 表示用户目录路径

===== 如果打开一个程序 =====
以“系统配置”为例,先按SUPER + A,SUPER即Win键,然后切换到中文输入法,输入“系统配置”,按回车即打开程序。再按TAB键浏览系统配置里的子配置程序



===== 桌面 =====
ALT + F1: 聚焦到桌面左侧任务导航栏,可按上下键导航。
ALT + F2: 运行命令
ALT + F4: 关闭窗口
ALT + TAB: 切换程序窗口
ALT + 空格: 打开窗口菜单
PRINT: 桌面截图

SUPER: 打开Dash面板,可搜索或浏览项目,默认有个搜索框,按“下”方向键进入浏览区域(SUPER键指Win键或苹果电脑的Command键)
在Dash面板中按CTRL + TAB: 切换到下一个子面板(可搜索不同类型项目,如程序、文件、音乐)
SUPER + A: 搜索或浏览程序(Application)
SUPER + F: 搜索或浏览文件(File)
SUPER + M: 搜索或浏览音乐文件(Music)

===== Orca读屏软件 =====
启动Orca: SUPER + A,然后输入orca,然后回车
ORCA + 空格: 显示首选项对话框(ORCA键是指Insert插入键或CAPS LOCK大小写转换键,取决于设置)
ORCA + t: 读当前时间
ORCA + tt: 读当前日期
ORCA + s: 切换合成语音开关
ORCA + /: 朗读标题
ORCA + //: 朗读状态栏
ORCA + 分号: 朗读整个文件
ORCA + Q: 退出Orca
更多快捷键请参考Orca首选项的键绑定标签页

===== Firefox浏览器 =====
进入Firefox的方法:
1. SUPER + A,然后按firefox,回车。这个是在Dash面板中搜索应用程序运行。事实上,只要按fir就能定位到Firefox程序。
2. ALT,然后按firefox,回车。这个相当于在命令行运行一条命令。
3. 在终端中按firefox&,回车。这个适用于以终端作为主要操作窗口的用户,使用TAB键还可以自动补全命令(只需输入前几个字母再按TAB键)。&在shell中是后台运行的意思,这样终端就不会被Firefox独占。
CTRL + T: 新建标签页
CTRL + W: 关闭标签页
CTRL + SHIFT + T: 重新打开最近关闭的一个标签页
CTRL + TAB: 切换到下一个标签页
CTRL + SHIFT + TAB: 切换到上一个标签页
ALT + [1-8]: 跳到制定标签页
ALT + 9: 跳到最后一个标签页
CTRL + L: 跳到地址栏
ESC: 停止加载当前页面
CTRL + K: 跳到搜索引擎输入框
CTRL + F: 在当前页面中搜索
/: 快速查找。在Linux中很多程序(如VI、Man、Less)都使用/作为搜索的快捷键,并且可使用正则表达式查找。但在Firefox中没有正则表达式搜索的功能。
CTRL + D: 收藏到书签
ALT + 左方向键: 后退
ALT + v: 前进
CTRL + Q: 退出

===== Gedit文本编辑器 =====
启动gedit:SUPER + A,然后按gedit,回车
CTRL + N: 新建文档
CTRL + W: 关闭文档
CTRL + S: 保存
CTRL + SHIFT + S: 另存为
CTRL + S: 搜索
CTRL + H: 搜索并替换
CTRL + I: 跳到某一行
CTRL + C: 复制
CTRL + V: 粘贴
CTRL + X: 剪切
CTRL + Q: 退出

===== Nautilus文件管理器 =====
启动Nautilus的方法:
1. SUPER + 1,这个方法仅适用于Nautilus在左边快速启动的位置没有改变的情况。
2. SUPER + A,然后输入nautilus,然后回车
F2: 重命名
CTRL + 1: 图标视图
CTRL + 2: 列表视图
CTRL + T: 新建标签页
CTRL + W: 关闭标签页
CTRL + D: 收藏到书签
CTRL + Q: 退出
Nautilus还有很多和Firefox一致的快捷键。

===== Rhythmbox音频播放器 =====
CTRL + 空格: 播放/暂停
ALT + 右方向键: 下一首
ALT + 左方向键: 上一首
CTRL + 上方向键: 增大音量
CTRL + 下方向键: 减少音量
CTRL + U: 随机播放
CTRL + R: 重复播放
CTRL + Q: 退出

================================================

VI

vi/vim 基本使用方法
vi编辑器是所有Unix及Linux系统下标准的编辑器,它的强大不逊色于任何最新的文本编辑器,这里只是简单地介绍一下它的用法和一小部分指令。由于对Unix及Linux系统的任何版本,vi编辑器是完全相同的,因此您可以在其他任何介绍vi的地方进一步了解它。Vi也是Linux中最基本的文本编辑器,学会它后,您将在Linux的世界里畅行无阻。

1、vi的基本概念
基本上vi可以分为三种状态,分别是命令模式(command mode)、插入模式(Insert mode)和底行模式(last line mode),各模式的功能区分如下:

1) 命令行模式command mode)

控制屏幕光标的移动,字符、字或行的删除,移动复制某区段及进入Insert mode下,或者到 last line mode。

2) 插入模式(Insert mode)

只有在Insert mode下,才可以做文字输入,按「ESC」键可回到命令行模式。

3) 底行模式(last line mode)

将文件保存或退出vi,也可以设置编辑环境,如寻找字符串、列出行号……等。

不过一般我们在使用时把vi简化成两个模式,就是将底行模式(last line mode)也算入命令行模式command mode)。

2、vi的基本操作
a) 进入vi

在系统提示符号输入vi及文件名称后,就进入vi全屏幕编辑画面:

$ vi myfile

不过有一点要特别注意,就是您进入vi之后,是处于「命令行模式(command mode)」,您要切换到「插入模式(Insert mode)」才能够输入文字。初次使用vi的人都会想先用上下左右键移动光标,结果电脑一直哔哔叫,把自己气个半死,所以进入vi后,先不要乱动,转换到「插入模式(Insert mode)」再说吧!

b) 切换至插入模式(Insert mode)编辑文件

在「命令行模式(command mode)」下按一下字母「i」就可以进入「插入模式(Insert mode)」,这时候你就可以开始输入文字了。

c) Insert 的切换

您目前处于「插入模式(Insert mode)」,您就只能一直输入文字,如果您发现输错了字!想用光标键往回移动,将该字删除,就要先按一下「ESC」键转到「命令行模式(command mode)」再删除文字。

d) 退出vi及保存文件

在「命令行模式(command mode)」下,按一下「:」冒号键进入「Last line mode」,例如:

: w filename (输入 「w filename」将文章以指定的文件名filename保存)

: wq (输入「wq」,存盘并退出vi)

: q! (输入q!, 不存盘强制退出vi)

3、命令行模式(command mode)功能键
1). 插入模式

按「i」切换进入插入模式「insert mode」,按“i”进入插入模式后是从光标当前位置开始输入文件;

按「a」进入插入模式后,是从目前光标所在位置的下一个位置开始输入文字;

按「o」进入插入模式后,是插入新的一行,从行首开始输入文字。

2). 从插入模式切换为命令行模式

按「ESC」键。

3). 移动光标

vi可以直接用键盘上的光标来上下左右移动,但正规的vi是用小写英文字母「h」、「j」、「k」、「l」,分别控制光标左、下、上、右移一格。

按「ctrl」+「b」:屏幕往“后”移动一页。

按「ctrl」+「f」:屏幕往“前”移动一页。

按「ctrl」+「u」:屏幕往“后”移动半页。

按「ctrl」+「d」:屏幕往“前”移动半页。

按数字「0」:移到文章的开头。

按「G」:移动到文章的最后。

按「$」:移动到光标所在行的“行尾”。

按「^」:移动到光标所在行的“行首”

按「w」:光标跳到下个字的开头

按「e」:光标跳到下个字的字尾

按「b」:光标回到上个字的开头

按「#l」:光标移到该行的第#个位置,如:5l,56l。

4). 删除文字

「x」:每按一次,删除光标所在位置的“后面”一个字符。

「#x」:例如,「6x」表示删除光标所在位置的“后面”6个字符。

「X」:大写的X,每按一次,删除光标所在位置的“前面”一个字符。

「#X」:例如,「20X」表示删除光标所在位置的“前面”20个字符。

「dd」:删除光标所在行。

「#dd」:从光标所在行开始删除#行

5). 复制

「yw」:将光标所在之处到字尾的字符复制到缓冲区中。

「#yw」:复制#个字到缓冲区

「yy」:复制光标所在行到缓冲区。

「#yy」:例如,「6yy」表示拷贝从光标所在的该行“往下数”6行文字。

「p」:将缓冲区内的字符贴到光标所在位置。注意:所有与“y”有关的复制命令都必须与“p”配合才能完成复制与粘贴功能。

6). 替换

「r」:替换光标所在处的字符。

「R」:替换光标所到之处的字符,直到按下「ESC」键为止。

7). 恢复/撤消/还原上一次操作

「u」:如果误执行一个命令,可以马上按下「u」,撤消上一个操作。按多次“u”可以执行多次撤消。

8). 更改

「cw」:更改光标所在处的字到字尾处

「c#w」:例如,「c3w」表示更改3个字

9). 跳至指定的行

「ctrl」+「g」列出光标所在行的行号。

「#G」:例如,「15G」,表示移动光标至文章的第15行行首。

4、Last line mode下命令简介
在使用「last line mode」之前,请记住先按「ESC」键确定您已经处于「command mode」下后,再按「:」冒号即可进入「last line mode」。

A) 列出行号

「set nu」:输入「set nu」后,会在文件中的每一行前面列出行号。

B) 跳到文件中的某一行

「#」:「#」号表示一个数字,在冒号后输入一个数字,再按回车键就会跳到该行了,如输入数字15,再回车,就会跳到文章的第15行。

C) 查找字符

「/关键字」:先按「/」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往后寻找到您要的关键字为止。

「?关键字」:先按「?」键,再输入您想寻找的字符,如果第一次找的关键字不是您想要的,可以一直按「n」会往前寻找到您要的关键字为止。

D) 保存文件

「w」:在冒号输入字母「w」就可以将文件保存起来。

E) 离开vi

「q」:按「q」就是退出,如果无法离开vi,可以在「q」后跟一个「!」强制离开vi。

「qw」:一般建议离开时,搭配「w」一起使用,这样在退出的时候还可以保存文件。

5、vi命令列表
1、下表列出命令模式下的一些键的功能:

h
左移光标一个字符

l
右移光标一个字符

k
光标上移一行

j
光标下移一行

^
光标移动至行首

0
数字“0”,光标移至文章的开头

G
光标移至文章的最后

$
光标移动至行尾

Ctrl+f
向前翻屏

Ctrl+b
向后翻屏

Ctrl+d
向前翻半屏

Ctrl+u
向后翻半屏

i
在光标位置前插入字符

a
在光标所在位置的后一个字符开始增加

o
插入新的一行,从行首开始输入

ESC
从输入状态退至命令状态

x
删除光标后面的字符

#x
删除光标后的#个字符

X
(大写X),删除光标前面的字符

#X
删除光标前面的#个字符

dd
删除光标所在的行

#dd
删除从光标所在行数的#行

yw
复制光标所在位置的一个字

#yw
复制光标所在位置的#个字

yy
复制光标所在位置的一行

#yy
复制从光标所在行数的#行

p
粘贴

u
取消操作

cw
更改光标所在位置的一个字

#cw
更改光标所在位置的#个字

下表列出行命令模式下的一些指令
w filename
储存正在编辑的文件为filename

wq filename
储存正在编辑的文件为filename,并退出vi

q!
放弃所有修改,退出vi

set nu
显示行号

/或?
查找,在/后输入要查找的内容

n
与/或?一起使用,如果查找的内容不是想要找的关键字,按n或向后(与/联用)或向前(与?联用)继续查找,直到找到为止。
乐乎设计,乐乎生活~

TOP

http://www.deeplearningbook.org
Some useful deep learning programming exercises and tutorials, not affiliated with the book, include:

    TensorFlow tutorials
    Theano exercises
    Theano deep learning tutorials
乐乎设计,乐乎生活~

TOP

Ian Goodfellow 生成对抗网络(GAN)论文解析
https://baijiahao.baidu.com/po/f ... 4178458820552%22%7D
Hexa要将商品3D建模变成纯软件服务,电商成本控制心腹大患找到新解法
OpenAI的人工智能能通过文字判断情绪,自学的!
解读 | 艺术家如何借助神经网络进行创作?
乐乎设计,乐乎生活~

TOP

BibTeX 是一种格式和一个程序, 用于协调LaTeX的参考文献处理.

BibTeX 使用数据库的的方式来管理参考文献. BibTeX 文件的后缀名为 .bib . 先来看一个例子

@article{name1,
author = {作者, 多个作者用 and 连接},
title = {标题},
journal = {期刊名},
volume = {卷20},
number = {页码},
year = {年份},
abstract = {摘要, 这个主要是引用的时候自己参考的, 这一行不是必须的}
}

@book{name2,
author ="作者",
year="年份2008",
title="书名",
publisher ="出版社名称"
}

说明:

    第一行@article 告诉 BibTeX 这是一个文章类型的参考文献. 还有其它格式, 例如 article, book, booklet, conference, inbook, incollection, inproceedings, manual, misc, mastersthesis, phdthesis, proceedings, techreport, unpublished 等等.
    接下来的"name1", 就是你在正文中应用这个条目的名称.
    其它就是参考文献里面的具体内容啦.

大概都是由这些一个个的这样的标签组成,每个表示一个文献,全部按照这样写即可。
@ARTICLE  @CONFERENCE  这些指定了文献的类型,article是期刊文章  ,conference是会议文章,可以从名称上分辨。类型有下面几种(来自http://amath.colorado.edu /documentation/LaTeX/reference/faq/bibstyles.html):

@article          An article from a journal or magazine
@book             A book with an explicit publisher
@booklet          A work that is printed and bound, but without a named publisher or sponsoring institution
@conference       The same as inproceedings
@inbook           A part of a book, which may be a chapter (or section or whatever) and/or a range of pages
@incollection     A part of a book having its own title
@inproceedings    An article in a conference proceedings
@manual  Technical documentation
@mastersthesis    A Master's thesis
@misc             Use this type when nothing else fits
@phdthesis        A PhD thesis
@proceedings      The proceedings of a conference
@techreport       A report published by a school or other institution, usually numbered within a series
@unpublished      A document having an author and title, but not formally published
@collection       Not a standard entry type. Use proceedings instead.
@patent           Not a standard entry type.

不翻译了,很简单的文字。
----
紧跟在@ARTICLE{之后的文字就是 这个文献的标签id了,这个在一个bib文件中需要是唯一的,因为我们在tex中用\cite{}引用时需要用这个id来引用,当然需要唯一的值(也不用怕,如果写重复了,bibtex在编译时不会给你通过的,你可以再修改)。
再后面的标签的说明也很简单了,author就是作者阿,title就是标题阿,这个不说了,大家一看肯定就都明白了。

PS:有直观的GUI的界面可以去管理,推荐使用JabRef来管理,我就用的这个,很方便,很快捷。
jabref跨平台的,急于java开发的一个东东,而且是免费的。ubuntu下直接sudo apt-get install jabref 即可,其他版本linux的自行处理,我没用过,win下也有版本,安装下就行。

编写好这些之后,保存,然后在你的tex文档中加入下面两行:
\bibliographystyle{bst文件 xx.bst}
\bibliography{你的bib文件名 xx.bib}
加入位置就是文章的正文之后,\end{document}之前,

在正文中引用时,采用\cite{id}的方式来引用,id就是上文中所说的唯一的id。
PS:如果没有bst文件时,那么就需要自己来用默认提供的几个bst模板了:
---(来源:http://zzg34b.w3.c361.com/package/reference.htm)
plain,按字母的顺序排列,比较次序为作者、年度和标题
unsrt,样式同plain,只是按照引用的先后排序
alpha,用作者名首字母+年份后两位作标号,以字母顺序排序
abbrv,类似plain,将月份全拼改为缩写,更显紧凑
ieeetr,国际电气电子工程师协会期刊样式
acm,美国计算机学会期刊样式
siam,美国工业和应用数学学会期刊样式
apalike,美国心理学学会期刊样式
-----
还有很多,这里不列举了,这里有所有的类型。
一般简单的用plain或者alpha就行了,ieeetr这些是针对特定的会议来使用。
上面也说了,一些期刊之类的也会提供他们自己的bst文件的,去相关网站下载即可。


tex和bib都设置好之后,就可以来编译了,编译分4步:
1. latex xx.tex 编译tex文件,没错误的话会生成aux文件,aux文件包含了引用这些的信息。
2. bibtex xx.aux 根据aux文件中记录的信息来检测bib文件中的相关文献,此时也会检测bib中相关的书写有无错误。
有错会提示,上面说的修改错误的时候就在这个时候来检测。
没有错误的话会生成bbl文件,你可以打开bbl文件看下就明白了,
bbl里面其实就是本文最刚开头说的直接用
\begin{thebibliography}{10}
\bibitem xxxx
\bibitem xxxx
\end{thebibliography}
的这种形势。
3. latex xx.tex 再次编译,把参考文献编译进文档中。
4. latex xx.tex 三次编译,把交叉引用编译正确。

完毕,可以打开dvi看下效果了!~!~
如果嫌麻烦,可以写个脚本或者一次执行多个命令。
我一般就把所有的写成一行来用:
latex my.tex; bibtex my.aux; latex my.tex; latex my.tex; dvipdf; acroread my.pdf;
PS:shell脚本我用的还不熟,不献丑了^_^
如果在论文撰写中,一般直接先查看dvi就可以了(把dvipdf往后的去掉,换成xdvi my.dvi)最后再生成pdf
因为dvipdf需要一点时间(特别是使用中文时,比较慢,可能是字体嵌入的问题,不太清楚,因为dvipdf编译全英文的paper还是比较快的)。

在LaTeX中使用BibTeX
为了在 LaTeX 中使用BibTeX 数据库, 你必须先做下面三件事情:

1) 设置参考文献的类型 (bibliography style). 标准的为 plain:

    \bibliographystyle{plain}

将上面的命令放在 LaTeX 文档的 \begin{document}后边. 其它的类型包括

    unsrt – 基本上跟 plain 类型一样, 除了参考文献的条目的编号是按照引用的顺序, 而不是按照作者的字母顺序.
    alpha – 类似于 plain 类型, 当参考文献的条目的编号基于作者名字和出版年份的顺序.
    abbrv – 缩写格式 .

2) 标记引用 (Make citations). 当你在文档中想使用引用时, 插入 LaTeX 命令

    \cite{引用文章名称}

"引用文章名称" 就是前边定义@article后面的名称.

3) 告诉 LaTeX 生成参考文献列表 . 在 LaTeX 的结束前输入

    \bibliography{bibfile}

这里bibfile 就是你的 BibTeX 数据库文件 bibfile.bib .

运行 BibTeX
分为下面四步

    用LaTeX编译你的 .tex 文件 , 这是生成一个 .aux 的文件, 这告诉 BibTeX 将使用那些应用.
    用BibTeX 编译 .bib 文件.
    再次用LaTeX 编译你的 .tex 文件, 这个时候在文档中已经包含了参考文献, 但此时引用的编号可能不正确.
    最后用 LaTeX 编译你的 .tex 文件, 如果一切顺利的话, 这是所有东西都已正常了.

例子: 将上面的 BibTeX 的的例子保存为 bibtex-example.bib .

\documentclass{article}
\usepackage{CJK}
\begin{document}
\begin{CJK}{UTF8}{gkai}
%我是在linux下用使用latex的, window用户将上一行改为\begin{CJK}{GBK}{kai}
text\cite{name1}\cite{name2}
中文
把Latex中的 Reference 写成中文的"参考文献"
%如果文档类是article之类的, 用\renewcommand\refname{参考文献}
%如果文档类是book之类的, 用\renewcommand\bibname{参考文献}
\renewcommand\refname{参考文献}
\bibliographystyle{plain}
\bibliography{ bibtex-example.bib}
\end{CJK}
\end{document}

将上面的内容保存为bibtex-example.tex .

latex编译一次, bibtex 编译一次, 再用 latex编译两次就大功告成了!
乐乎设计,乐乎生活~

TOP

Ian Goodfellow详解GANs诞生始末:没有重现,谈何理解?
本文作者:奕欣         2017-04-12 17:31
导语:「如果 AI 对世界的想象非常具体而真实,包括懂得如何生成真实的图像和声音,那么就能促进 AI 理解真实存在的世界。而后者,可以帮助 AI 理解所见所听的内容。

雷锋网 AI 科技评论按:Ian Goodfellow 作为当代人工智能最为瞩目的研究者之一,不论是作为 Yoshua Bengio 的得意门生,还是在 OpenAI 及谷歌间跳槽辗转,他的一举一动都饱受关注。但奠定他人工智能地位的重要一着,当属 Goodfellow 提出的生成式对抗网络(GANs)了,在 2016 年年底,他也在 NIPS 大会上分享了研究成果。日前,Wired 对 IanGoodfellow 进行了采访,了解了 GANs 的研究起源,雷锋网进行编译,并做了不改动原意的编辑和修改。

1988 年 2 月 15 日,也就是1965 年诺贝尔物理奖得主理查德·费曼因腹膜癌逝世的那一天,他教室的黑板留下了这样一句话:「我不能理解我无法创造之物。」这句名言被谷歌大脑团队的 Ian Goodfellow 用来解释人工智能的设计逻辑:「人工智能无法理解它不能创造的东西。」

「生成模型」是 Goodfellow 在谷歌建立的一个新的研究小组,系统能够创建图像、声音及其它真实世界的表征。Goodfellow 引用了费曼的话,认为这是实现人工智能的必由之路。

时间追溯到 2014 年,当 Goodfellow 还在蒙特利尔大学读博之时,他在一次醉酒的讨论中激发了构建一种名为「generative adversarial networks」,也就是 GANs 的 AI 技术。

现在,对 GANs 有粗略了解的学者都能说出这个观点的核心概念:一个生成器生成图像;一个判别器判断图像的真假。Goodfellow 表示:「你可以把两者理解为艺术家与评论家,前者想骗过评论家的眼睛,让他相信自己所呈现的画是真的。」因此,两者就能够在这个过程中不断提升各自的水平,直到摆脱人类的指导。

Facebook 首席科学家,深度学习三大巨头的 Yann LeCun 认为,「GANs 是近 20 年来深度学习领域诞生的最有意思的想法。」

深度学习作为人工智能的一个分支,改变了以谷歌、微软、亚马逊及 Facebook 为代表的互联网巨头的发展方向。虽然 Goodfellow 的想法还有待完善,但这一想法已经迅速扩展到整个 AI 界。包括 LeCun 在内的很多研究者认为 GANs 是实现无监督学习的可能路径。

而 Goodfellow 又是在怎样偶然的情况下设计出 GANs 的呢?他当时在 Les 3 Brasseurs 酒吧,和很多好友一同饯别博士毕业、如今就职于 DeepMind 的 Razvan Pascanu。其中一人谈到了他正在做的研究,即用统计学的方式将照片数据输入计算机,使之创建图片。当时 Goodfellow 认为这个想法不可能行得通,因为这涉及太多的统计学数据了。但在同时,他想到了一个更好的方法:神经网络能够教机器如何生成真实的图片。

Goodfellow 提出,可以构造两个神经网络,一个能学习生成真实图片,另一个能够判断真伪并给予反馈,通过这样的方式,他认为可以教会神经网络如何生成非常逼真的图片。

当时这个想法遭到了朋友的反驳,他们认为这个方法并不管用。而在聚会结束之后,微醺的 Goodfellow 回到家,「我感觉有点醉,而女朋友已经睡着了。我就在笔记本电脑上彻夜编出了 GANs 模型。实在是非常幸运,如果没有那晚的成功,可能我就放弃了这个想法。」

随后,Goodfellow 根据当晚的想法与几位研究者提出了 GANs 的概念,在第一篇论文里,两个神经网络通过生成式对抗学习,生成了手写数字的图片。而在接下来的三年间,上百篇论文都围绕这一概念进行探索。如今,从猫到火山再到星系,几乎任何事物都能当作生成图片的对象,甚至,它还协助了天文实验及物理学的研究。

尽管想法美好,现实却推进困难。毕竟要训练的神经网络不是一个,而是两个。Goodfellow 在谷歌建立的 GANs 研究团队目前所做的,就是尽可能地精简研究过程。「作为一名机器学习研究者,我需要研究可靠的训练方式。」

而除了生成图片与声音,系统还能够识别音画。能在少量人为干预的情况下,系统就能学到更多的知识。「模型能够理解世界如何构成,」Goodfellow 表示,「而且能在不进行明确告知的情况下进行学习。」

GANs 甚至能实现无监督的学习,实际上这一理念还没有化为现实。目前,神经网络能通过分析百万张猫的照片而成功识别,但需要人类大量进行人为标记,而且涉及人类的深度参与。人类的介入也一直成为 AI 研究者所考虑的问题。以 LeCun 为代表的研究者正在努力推进无监督学习系统,毫无疑问,这将推进人工智能的发展。

但这只是开始。GANs 将带来更多的可能性。南加利福尼亚大学的 AI 研究员 David Kale 认为,因为 GANs 能生成伪造数据,因此它能够在不侵犯用户隐私的前提下构建医疗 AI。机器学习得以在这些新生成的数据上进行训练。Kale 表示,「比起将患者数据放到互联网上(承受可能带来的隐私风险),为何我们不能训练 GANs 生成一个数据集,再用于其它领域的研究呢?」

有许多研究者在探究 GANs 背后的奥秘,而 Goodfellow 则打算在谷歌建立一个专门的团队。在离开谷歌加入 OpenAI 一年之后,他又重回谷歌,为了更好地与合作者们沟通。「花费一整天视频通话并不好玩,也不是解决工作的最佳途径。」

分享诚然重要,但密切的合作亦是如此——不论是 AI 研究者还是神经网络,都是一样。
乐乎设计,乐乎生活~

TOP

乐乎设计,乐乎生活~

TOP

Github上除了有TensorFlow的源码库之外,还有一些很不错的适合入门的资源。现在将目前已经接触到的资源整理出来,和大家分享。

1、TensorFlow源码库

https://github.com/tensorflow/tensorflow

2、TensorFlow中文文档

https://github.com/jikexueyuanwiki/tensorflow-zh

3、TensorFlow入门例子库1,每个例子都有对应的Notebook说明。

https://github.com/pkmital/tensorflow_tutorials

4、TensorFlow入门例子库2

https://github.com/nlintz/TensorFlow-Tutorials

5、TensorFlow入门例子库3,每个例子都有对应的Notebook说明。

https://github.com/aymericdamien/TensorFlow-Examples


TensorFlow学习课程:

http://learningtensorflow.com/index.html

这个网站按照入门的顺序,安排课程介绍如何学习TensorFlow,并且配备了一些例子和资料,很适合入门初学者学习。
乐乎设计,乐乎生活~

TOP

乐乎设计,乐乎生活~

TOP

http://blog.csdn.net/superman_xxx/article/details/65635285
使用下面的命令启动镜像:

docker run -it registry.cn-hangzhou.aliyuncs.com/denverdino/tensorflow /bin/bash
//选项-i用于保持STDIN在当前的窗口上,-t用于分配一个pesudo-tty,两个选项使得当前的窗口可以像一个linux的bash一样运行,丝毫没有违和感。第一个参数指定了使用的镜像,第二个参数指定了启动这个镜像后启用的命令,用bash启动方便我们开始第一次的探索。

    1
    2

    1
    2

这里写图片描述

8.
uname -a,查看信息
cd到/目录下,查看目录结构
运行tensorflow的hello world

root@ec9bfd276082:/# uname -a
Linux ec9bfd276082 4.4.8-boot2docker #1 SMP Mon Apr 25 21:57:27 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
root@ec9bfd276082:/# ls /
bin   dev  home  lib64  mnt        opt   root  run_jupyter.sh  srv  tmp  var
boot  etc  lib   media  notebooks  proc  run   sbin            sys  usr
root@ec9bfd276082:/# python
Python 2.7.6 (default, Jun 22 2015, 17:58:13)
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, TensorFlow!')
>>> sess =tf.Session()
>>> sess.run(hello)
'Hello, TensorFlow!'
>>> a = tf.constant(10)
>>> b = tf.constant(32)
>>> sess.run(a+b)
42
>>>


问题解决
乐乎设计,乐乎生活~

TOP

4.      安装cudnn5.0:

        (1)、解压缩:会生成cuda/include、cuda/lib、cuda/bin三个目录;

        (2)、分别将cuda/include、cuda/lib、cuda/bin三个目录中的内容拷贝到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.5对应的include、lib、bin目录下即可。

        cuda7.5和cudnn5.0就可以在机子上正常使用了。
乐乎设计,乐乎生活~

TOP

发新话题