深度学习应用
CV
图片识别 Image Classification
神经网络输入为图片数据,输出值为当前样本属于每个类别的概率
VGG系列, Inception系列, ResNet系列
目标检测 Object Detection
通过算法自动检测出图片汇中物体的大致位置,并分类出物体信息
RCNN, Fast RCNN, Mask RCNN,SSD,YOLO系列
语义分割 Semantic Segmentation
通过算法自动分割并识别图片中的内容,可以将语义分割理解成每个像素点的分类问题,分析每个像素点属于物体的类别
FCN, U-net, SegNet, DeepLab
视频理解 Video Understanding
视频分类,行为检测,视频主体抽取
C3D,TSN, DOVF, TS_LSTM
图片生成 Image Generation
通过学习真实图片的分布,获得高逼真的生成图片
VAE系列,GAN系列
NLP
机器翻译
Seq2Seq,BERT,GPT, GPT-2
聊天机器人
强化学习
虚拟游戏
机器人 Roboitcs
自动驾驶 Autonomous Driving
深度学习主流框架
- TensorFlow
Google 推出 TensorFlow 2 正式版本,将以动态图优先模式运行,从而能够避免
PyTorch
是 Facebook 基于原有的 Torch 框架推出的采用 Python 作为主要开发语言的深度学习框架。采用命令式编程,使得搭建网络和 调试网络非常方便。Keras
是一个基于 Theano 和 TensorFlow 等框架提供的底层运算而实现的高层框架, 提供了大量方便快速训练,测试的高层接口,对于常见应用来说,使用 Keras 开发效 率非常高。但是由于没有底层实现,需要对底层框架进行抽象,运行效率不高,灵活 性一般。Torch
是一个非常优秀的科学计算库,基于较冷门的编程语言 Lua 开发。Torch 灵活性 较高,容易实现自定义网络层,这也是 PyTorch 继承获得的优良基因。但是由于 Lua 语言使用人群较小,Torch 一直未能获得主流应用。Caffe
主要面向使用卷积神经网络的应用场合,并 不适合其他类型的神经网络的应用。Caffe 的主要开发语言是 C++,也提供 Python 语 言等接口,支持 GPU 和 CPU。
Caffe2 目前已经融入到 PyTorch 库中。Scikit-learn
是一个完整的面向机器学习算法的计算库,内建了常见的传统机器学习算 法支持,文档和案例也较为丰富,但是 Scikit-learn 并不是专门面向神经网络而设计 的,不支持 GPU 加速,对神经网络相关层实现也较欠缺。MXNET
由华人博士陈天奇和李沐等人开发,已经是亚马逊公司的官方深度学习框 架。采用了命令式编程和符号式编程混合方式,灵活性高,运行速度快,文档和案例 也较为丰富。Theano
是最早的深度学习框架之一,由 Yoshua Bengio 和 Ian Goodfellow 等人开发, 是一个基于 Python 语言、定位底层运算的计算库,Theano 同时支持 GPU 和 CPU 运 算。由于 Theano 开发效率较低,模型编译时间较长,同时开发人员转投 TensorFlow 等原因,Theano 目前已经停止维护。