【PyTorch深度学习】学习笔记之PyTorch与深度学习
第1章 PyTorch与深度学习
深度学习的应用
- 接近人类水平的图像分类
- 接近人类水平的语音识别
- 机器翻译
- 自动驾驶汽车
- Siri、Google语音和Alexa在最近几年更加准确
- 日本农民的黄瓜智能分拣
- 肺癌检测
- 准确度高于人类的语言翻译
- 读懂图片中的图像含义
现今深度学习应用中最受欢迎的技术和出现的时间点
| 技术 | 年份 |
|---|---|
| 神经网络 | 1943 |
| 反向传播 | 20世纪60年代初期 |
| 卷积神经网络 | 1979 |
| 循环神经网络 | 1980 |
| 长短期记忆网络 | 1997 |
深度学习过去的叫法
20世纪70年代叫控制论(cybernetics),20世纪80年代称之为联结主义(connectionism),现在称为深度学习或者神经网络
深度学习现在流行起来的原因
- 硬件可用性
- 数据和算法
- 深度学习框架
硬件可用性
图形处理单元(Graphic Processing Unit,GPU)在完成数百万甚至数十亿的参数上的大规模数学运算(如矩阵乘法)时可以搞出几个数量级。
GPU内存,NVIDIA的1080ti大概有11GB的内存,价格在700美元左右
各种云服务,如AWS,Google Cloud,Floyd(这家公司提供转为深度学习优化的GPU机器)
数据和算法
文本、图片、视频和音频数据
在计算机视觉领域,ImageNet竞赛在提供1000种类别中的140万图片的数据集方面发挥了巨大作用
过去比赛中一些成功的算法有VGG、ResNet、Inception、DenseNet,现在这些算法已在行业中得到应用,用于解决各种计算机视觉问题
其他一些流行的数据集:
- MNIST
- COCO数据集
- CIFAR
- The Street View House Numbers
- PASCAL VOC
- Wikipedia dump
- 20 Newsgroups
- Penn Treebank
- Kaggle
各种不同算法的发展:
批规一化、激活函数、跳跃式连接(skip connection)、长短期记忆网络(LSTM)、dropout等
深度学习框架
早期,需要具备C++和CUDA的专业知识来实现深度学习算法
现在,随着深度学习框架的开源,只需具备脚本语言知识(如Python)即可
行业中流行的深度学习框架有:TensorFlow、Caffe2、Keras、Theano、PyTorch、Chainer、DyNet、MXNet和CNTK
PyTorch以及其他大多数深度学习框架,主要用于两个方面:
- 用GPU加速过的运算替代与NumPy类似的运算;
- 构建深度神经网络
PyTorch易用简单,不同于其他大多数流行的使用静态计算图的深度学习矿机,PyTorch使用动态计算,因此在构建复杂架构时可以有更高的灵活性。
PyTorch大量使用了Python概念,例如类、结构和条件循环,允许用户以纯面向对象的方式构建深度学习算法。
由于PyTorch最初主要为研究目的而构建,因此不建议用于哪些对延迟要求非常高的生产环境。然而,随着名为Open Neural NetWork Exchange(ONNX)的新项目的出现,这种情况正在发生改变,该项目重点是将在PyTorch上开发的模型部署到适用于生产的Caffe2这样的平台上。该项目得到了Facebook和微软的支持。
【PyTorch深度学习】学习笔记之PyTorch与深度学习的更多相关文章
- 深度学习课程笔记(十三)深度强化学习 --- 策略梯度方法(Policy Gradient Methods)
深度学习课程笔记(十三)深度强化学习 --- 策略梯度方法(Policy Gradient Methods) 2018-07-17 16:50:12 Reference:https://www.you ...
- 强化学习读书笔记 - 06~07 - 时序差分学习(Temporal-Difference Learning)
强化学习读书笔记 - 06~07 - 时序差分学习(Temporal-Difference Learning) 学习笔记: Reinforcement Learning: An Introductio ...
- Python深度学习读书笔记-1.什么是深度学习
人工智能 什么是人工智能.机器学习与深度学习(见图1-1)?这三者之间有什么关系?
- WCF入门教程(四)通过Host代码方式来承载服务 一个WCF使用TCP协议进行通协的例子 jquery ajax调用WCF,采用System.ServiceModel.WebHttpBinding System.ServiceModel.WSHttpBinding协议 学习WCF笔记之二 无废话WCF入门教程一[什么是WCF]
WCF入门教程(四)通过Host代码方式来承载服务 Posted on 2014-05-15 13:03 停留的风 阅读(7681) 评论(0) 编辑 收藏 WCF入门教程(四)通过Host代码方式来 ...
- 强化学习读书笔记 - 13 - 策略梯度方法(Policy Gradient Methods)
强化学习读书笔记 - 13 - 策略梯度方法(Policy Gradient Methods) 学习笔记: Reinforcement Learning: An Introduction, Richa ...
- 强化学习读书笔记 - 12 - 资格痕迹(Eligibility Traces)
强化学习读书笔记 - 12 - 资格痕迹(Eligibility Traces) 学习笔记: Reinforcement Learning: An Introduction, Richard S. S ...
- 强化学习读书笔记 - 11 - off-policy的近似方法
强化学习读书笔记 - 11 - off-policy的近似方法 学习笔记: Reinforcement Learning: An Introduction, Richard S. Sutton and ...
- 强化学习读书笔记 - 10 - on-policy控制的近似方法
强化学习读书笔记 - 10 - on-policy控制的近似方法 学习笔记: Reinforcement Learning: An Introduction, Richard S. Sutton an ...
- 强化学习读书笔记 - 09 - on-policy预测的近似方法
强化学习读书笔记 - 09 - on-policy预测的近似方法 参照 Reinforcement Learning: An Introduction, Richard S. Sutton and A ...
随机推荐
- java-jsch实现sftp文件操作
(曾在天涯)的文章详细讲解了jsch中的函数以及用法 http://www.cnblogs.com/longyg/archive/2012/06/25/2556576.html http://www. ...
- 1269 匈牙利游戏 2012年CCC加拿大高中生信息学奥赛
1269 匈牙利游戏 2012年CCC加拿大高中生信息学奥赛 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题目描述 Description ...
- ArrayList与Vector区别
ArrayList与Vector区别表 ArrayList Vector 1.实现原理:采用动态对象数组实现,默认构造方法创建了一个空数组 1.实现原理:采用动态数组对象实现,默认构造方法创建了一个大 ...
- 【干货】Html与CSS入门学习笔记1-3
从23号开始用了4天时间看完了<Head First Html与CSS>这本书,本书讲解方式深入浅出,便于理解,结合习题,便于记忆,是一本不错的入门书.下面是本书的学习笔记: 一.认识HT ...
- Angular CLI的简单使用(1)
参考地址: https://v2.angular.cn/docs/ts/latest/cli-quickstart.html Angular CLI是一个命令行界面工具,它可以创建项目.添加文件以及 ...
- EF中Entity SQL用法
public List<policecase> GetPoliceCaseList(PoliceCaseFilter view) { string sq ...
- Spring之IOC核心模块详解
Spring IOC简述 IOC称为控制反转,也有一种说法叫DI(依赖注入).IOC也是spring最核心的模块,Spring的所有工作几乎都围绕着IOC展开. 什么是控制反转呢?简单的说,控制反转就 ...
- windows phone 8.0 的网络图片异步加载方案
买了一本林政的8.1UI的书,看到一个使用弱引用对像来解决图片缓存的问题,刚好自已写的应用也遇到这个问题,于是小改动了一下代码,搬到了8.0版本来使用,代码由 zhxilin℃+ 大神提供了部分解决代 ...
- 【洛谷5358】[SDOI2019] 快速查询(模拟)
点此看题面 大致题意: 有单点赋值.全局加法.全局乘法.全局赋值.单点求值.全局求和\(6\)种操作.现在给出操作序列,以及\(t\)对正整数\(a_i,b_i\).让你处理\(t*q\)次操作,每次 ...
- 【洛谷1993】小K的农场(差分约束系统模板题)
点此看题面 大致题意: 给你若干组不等式,请你判断它们是否有解. 差分约束系统 看到若干组不等式,应该很容易想到差分约束系统吧. \(A-B≥C\):转换可得\(A-B≥C\) \(A-B≤C\):转 ...