cs231n spring 2017 lecture8 Deep Learning Networks
1. CPU vs. GPU:
CPU核心少(几个),更擅长串行任务。GPU有很多核心(几千个),每一个核都弱,有自己的内存(几个G),很适合并行任务。GPU最典型的应用是矩阵运算。
GPU编程:1)CUDA,只能在英伟达;2)OpenCL类似CUDA,好处是可以跑在任何平台上,但相对慢一些。深度学习可以直接调用现成的库,不用自己写CUDA代码。
用cuDNN比不用快几倍。
深度学习的瓶颈可能不在GPU的运算,而在GPU和数据的通信上,解决办法是:1)把数据读入RAM;2)用SSD而不是HDD;3)用CPU多线程提前读取数据。
2. 深度学习框架:Caffe(UC Berkeley)/Caffe2(Facebook), Torch(NYU, Facebook)/PyTorch(Facebook), Theano(U Montreal)/TensorFlow(Google), Paddle(Baidu), CNTK(Microsoft), MXNet(Amazon).
框架分为static(TensorFlow、Caffe2)和dynamic(PyTorch)。TensorFlow是很安全的选择。PyTorch最适合做研究。TensorFlow和Caffe2更适合实际部署应用。
cs231n spring 2017 lecture8 Deep Learning Networks的更多相关文章
- cs231n spring 2017 lecture8 Deep Learning Networks 听课笔记
1. CPU vs. GPU: CPU核心少(几个),更擅长串行任务.GPU有很多核心(几千个),每一个核都弱,有自己的内存(几个G),很适合并行任务.GPU最典型的应用是矩阵运算. GPU编程:1) ...
- cs231n spring 2017 lecture7 Training Neural Networks II 听课笔记
1. 优化: 1.1 随机梯度下降法(Stochasitc Gradient Decent, SGD)的问题: 1)对于condition number(Hessian矩阵最大和最小的奇异值的比值)很 ...
- cs231n spring 2017 lecture7 Training Neural Networks II
1. 优化: 1.1 随机梯度下降法(Stochasitc Gradient Decent, SGD)的问题: 1)对于condition number(Hessian矩阵最大和最小的奇异值的比值)很 ...
- cs231n spring 2017 lecture10 Recurrent Neural Networks 听课笔记
(没太听明白,下次重新听一遍) 1. Recurrent Neural Networks
- cs231n spring 2017 lecture6 Training Neural Networks I 听课笔记
1. 激活函数: 1)Sigmoid,σ(x)=1/(1+e-x).把输出压缩在(0,1)之间.几个问题:(a)x比较大或者比较小(比如10,-10),sigmoid的曲线很平缓,导数为0,在用链式法 ...
- cs231n spring 2017 lecture10 Recurrent Neural Networks
(没太听明白,下次重新听一遍) 1. Recurrent Neural Networks
- cs231n spring 2017 lecture6 Training Neural Networks I
1. 激活函数: 1)Sigmoid,σ(x)=1/(1+e-x).把输出压缩在(0,1)之间.几个问题:(a)x比较大或者比较小(比如10,-10),sigmoid的曲线很平缓,导数为0,在用链式法 ...
- cs231n spring 2017 lecture14 Reinforcement Learning 听课笔记
(没太听明白,下次重新听) 1. 增强学习 有一个 Agent 和 Environment 交互.在 t 时刻,Agent 获知状态是 st,做出动作是 at:Environment 一方面给出 Re ...
- cs231n spring 2017 lecture5 Convolutional Neural Networks听课笔记
1. 之前课程里,一个32*32*3的图像被展成3072*1的向量,左乘大小为10*3072的权重矩阵W,可以得到一个10*1的得分,分别对应10类标签. 在Convolution Layer里,图像 ...
随机推荐
- PAT Advanced 1099 Build A Binary Search Tree (30) [⼆叉查找树BST]
题目 A Binary Search Tree (BST) is recursively defined as a binary tree which has the following proper ...
- 201771010123汪慧和《面向对象程序设计Java》第十一周实验总结
一.理论部分 1.栈 (1)栈是一种特殊的线性表,是一种后进先出的结构.(2)栈是限定仅在表尾进行插入和删除运算的线性表,表尾称为栈顶,表头称为栈底.(3)栈的物理存储可以用顺序存储结构,也可以用链式 ...
- DDL&DML
SQL语言的DDL和DML DDL:数据定义语言它是用来定义 管理数据对象(数据库和数据表)的. create(创建),alter(修改),drop(删除) 一.创建数据库create datebas ...
- eclipse配置tomcat详细步骤
1.下载tomcat9并解压到D盘根目录下 2.Windows——>Preferences——>Server——>Runtime Environments——>Add 3.选择 ...
- JS中,输出1-10之间的随机整数
<script> document.write(parseInt(10*Math.random())); //输出0-10之间的随机整数 document.write(Math.floor ...
- SpringSecurity过滤器顺序
https://blog.csdn.net/qq_35720307/article/details/97656608 org.springframework.security.config.annot ...
- MySQL-SQL语句分类
MySQL中的SQL语句有:DDL,DML,DCL,DQL,TCL DDL:数据库定义语言 data Definition language 用于创建.修改.和删除数据库内的数据结构,如: 1:创建和 ...
- MyBatis从入门到精通(第9章):Spring集成MyBatis(上)
MyBatis从入门到精通(第9章):Spring集成MyBatis(上) Spring是一个为了解决企业级Web应用开发过程中面临的复杂性,而被创建的一个非常流行的轻量级框架. mybatis-sp ...
- sublime text2设置快捷键打开浏览器
1 编辑一个py文件,内容如下: import sublime, sublime_plugin import webbrowser url_map = { 'C:\\server\\www\\' : ...
- 第7节 Arrays工具类
package cn.itcast.day08.demo04; import java.util.Arrays; /*java.util.Arrays是一个与数组相关的工具类,里面提供了大量静态方法, ...