Deep Learning for NLP学习翻译笔记(2)
Deep Learning for NLP
Deep Learning for NLP
Lecture 2:Introduction to Teano
Neural Networks can be expressed as one long function of vector and matrix operations.
(神经网络可以表示为一个向量和矩阵运算的长函数。)
Common Frameworks(常用框架)
- C/C++
if you need maximum performance,start from scratch(如果你需要最高性能,那么就从头开始编程吧:) - Matlab
- Caffe
Ported Matlab’s implementation nets to C.(Caffe是纯粹的C++/CUDA架构,支持命令行、Python和MATLAB接口)
Mainly used for machine-vision(主要用于机器视觉。) - Torch:
Based on Lua,(基于Lua,)
Used by a lot of companies(Google Deep Mind,Facebook,IBM)(被很多公司所使用,包括google深度大脑,facebook,IBM等等) - Theano
Python based framework(python基本的框架)
Main framework used in the research community(主要框架被用于研究团队)
For comparison: http://fastml.com/torch-vs-theano/
Introduction to Theano
Advantage(优点)
- Python library with tight integration of Numpy(python库Numpy的紧密集成)
Easy syntax for matrix operations(简单的矩阵运算语法) - Transparent use of GPU(speed-up of up to 140x)(透明的GPU使用(加速140x))
- Efficient symbolic differentiation(Theano computes the gradient)(有效的符号微分(Theano计算梯度))
- Speed and stability optimizations(速度和稳定性优化)
- Calculations are dynamically mapped to C code(计算动态映射到C代码)
We do our computations as fast as we would have written it in C (我们有跟我们用C代码写出来的程序一样快的运算速度)
Great performance(>10 faster than Java in my experiments)(伟大的性能(比在我的实验中用Java还要快10倍))
Disadvantages(缺点)
- Debugging is really hard(调试很困难)
Some note on the installation of Theano(Theano安装的一些注意事项)
- Theano utilizes BLAS (Basic Linear Algebra Subprograms)(Theano利用BLAS(基本线性代数的子程序))
Building blocks for fast vector and matrix operations(速度向量和矩阵运算的构建块)
Often written in Fortran, sometimes in Assembler(经常用Fortran编写,但有时候用Assembler) - For performance optimization install a BLAS package(为优化性能安装一个BLAS包)
- Benchmark different BLAS packages(不同BLAS包的基准不同)
- I use a manually compiled OpenBlas implementation(我使用一个手动编译OpenBlas来实现)
Installation notes: http://deeplearning.net/software/theano/install_ubuntu.html
Theano – Flow(Theano流程图)
The execution of a Theano script is a bit different(Theano脚本的执行略有不同)
Theano-Computation Graph(Theano计算图)
import theano
import theano.tensor as T
a=T.fvector()
b=T.fvector()
c=T.fmatrix()
res1=a+b
res2=T.dot(res1,c)
Deep Learning for NLP学习翻译笔记(2)的更多相关文章
- (Stanford CS224d) Deep Learning and NLP课程笔记(一):Deep NLP
Stanford大学在2015年开设了一门Deep Learning for Natural Language Processing的课程,广受好评.并在2016年春季再次开课.我将开始这门课程的学习 ...
- 【转】Deep Learning(深度学习)学习笔记整理系列之(一)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-0 ...
- Deep Learning(深度学习)学习笔记整理系列之(五)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- Deep Learning(深度学习)学习笔记整理系列之(八)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- Deep Learning(深度学习)学习笔记整理系列之(七)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- Deep Learning(深度学习)学习笔记整理系列之(六)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- Deep Learning(深度学习)学习笔记整理系列之(四)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- Deep Learning(深度学习)学习笔记整理系列之(三)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
- Deep Learning(深度学习)学习笔记整理系列之(二)
Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...
随机推荐
- 让Linux修改IP、DNS等可以更简单
修改IP: 可以用 netconfig,可惜每次都得输入完整的IP.掩码.网关和DNS. 不如直接 vi /etc/sysconfig/network-scripts/ifcfg-eth0 再 /et ...
- 摩根斯坦利 - 2016年09月8日 面试题 - HashMap
摩根斯坦利 - 2016年09月8日 面试题: 给定一个 Map<Person, Object> map = new HashMap<Person, Object>(); 放入 ...
- GoF——组合模式
组合模式:将对象组合成树形结构以表示“部分-真题”的结构层次.组合模式使得用户对单个对象和组合对象的使用具有一致性. 结构图: using System; using System.Collectio ...
- Linux中的那些英文缩写和她的含义们
系统 man: Manual 意思是手册,可以用这个命令查询其他命令的用法. pwd:Print working directory 打印工作路径. su:Swith user 切换用户,切换到roo ...
- QT中代码中与设计器中控件信号与SLOT连接(原来还可以这样连接)
双击testqt.ui 托一个push button到窗体中,双击,可以输入字符 按F4或 menu->edit->edit signals/slots 定义SLOT 选择已定义好的SLO ...
- hibernate详解
Hibernate原理与应用 主要内容 1.引入 2.安装配置 3.基本概念和CURD 4.HQL和Criteria 5.关联映射 6.继承映射 7.集合映射 8.懒加载 9.缓存 10.事务 11. ...
- oracle 建表后添加表注释及字段注释
oracle添加表注释和表字段注释 创建Oracle数据库表时候加上注释 CREATE TABLE t1(id varchar2(32) primary key,name VARCHAR2(8) N ...
- Android NDK 编译FFmpeg(不需要复杂的环境变量设置)
环境: CentOS6.2——64位 借鉴:https://vec.io/posts/how-to-build-ffmpeg-with-android-ndk 在根目录下创建work文件夹:cd / ...
- 数据库CRUD操作
CRUD操作: C:create 增加数据: insert into 表名 values('N001','汉族') 普通 insert into 表名 values('','','') 如果有自增长列 ...
- append与after区别
append() & prepend()实在元素内插入内容(该内容变成该元素的子元素或节点),after() & before()是在元素的外面插入内容(其内容变成元素的兄弟节点).