理解深度学习之深度学习简介


Posted in Python onApril 14, 2021

机器学习

在吴恩达老师的课程中,有过对机器学习的定义:

ML:<P T E>

P即performance,T即Task,E即Experience,机器学习是对一个Task,根据Experience,去提升Performance;

在机器学习中,神经网络的地位越来越重要,实践发现,非线性的激活函数有助于神经网络拟合分布,效果明显优于线性分类器:

y=Wx+b

常用激活函数有ReLU,sigmoid,tanh;

sigmoid将值映射到(0,1):

理解深度学习之深度学习简介

tanh会将输入映射到(-1,1)区间:

理解深度学习之深度学习简介

#激活函数tanh
%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
def tanh(x):
    return (np.exp(x)-np.exp(-x))/(np.exp(x)+np.exp(-x))
X=np.linspace(-5,5,100)
plt.figure(figsize=(8,6))
ax=plt.gca()#get current axis:获取当前坐标系
#将该坐标系的右边缘和上边缘设为透明
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')
#设置bottom是x轴
ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data',0))
#设置left为y轴
ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data',0))
ax.plot(X,tanh(X),color='blue',linewidth=1.0,linestyle="-")
plt.show()

理解深度学习之深度学习简介

开源框架

当神经网络层数加深,可以加强捕捉分布的效果,可以简单认为深度学习指深层神经网络的学习;

当前有两大主流的深度学习框架:Pytorch和Tensorflow;

Pytorch支持动态计算图,使用起来更接近Python;

Tensorflow是静态计算图,使用起来就像一门新语言,据说简单易用的keras已经无人维护,合并到tensorflow;

一个深度学习项目的运行流程一般是:

v理解深度学习之深度学习简介

深度学习计算重复且体量巨大,所以需要将模型部署到GPU上,GPU的设计很适合加速深度学习计算,为了便于在GPU上开展深度学习实验,人们开发了CUDA架构,现在大部分DL模型都是基于CUDA加速的

关于CUDA

1.什么是CUDA?

CUDA(ComputeUnified Device Architecture),是显卡厂商NVIDIA推出的运算平台。 CUDA是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。

2.什么是CUDNN?

NVIDIA cuDNN是用于深度神经网络的GPU加速库。它强调性能、易用性和低内存开销。NVIDIA cuDNN可以集成到更高级别的机器学习框架中。

方向概览

当前计算机视觉的发展相对于自然语言处理更加成熟,NLP的训练比CV更耗费资源,CV模型相对较小;

在CV方向:

1.图像分类(ResNet,DenseNet)

  1. 目标检测ObjectDetection
  2. 风格迁移StyleTransfer
  3. CycleGAN:比如图像中马到斑马,也可以从斑马返回马
  4. ImageCaptioning:从图像生成描述文本,一般用CNN获得feature,再输入RNN获得文本

2.在NLP方向

  1. 情感分析:分类影评数据
  2. QuestionAnswering:一段问题->给出答案
  3. Translation:可以用OpenNMT-py,OpenNMT-py是开源的seq->seq模型
  4. ChatBot聊天机器人,基于QuestionAnswering,目前刚起步

另外还有强化学习Deep Reinforcement Learning,从简单的打砖块游戏到著名的阿尔法Go;

以及预训练语言模型:给一段话,让机器继续说下去,比如BERT,GPT2;

迁移学习

在CV中,NN的低层可以提取位置信息(边,角等精细信息),高层提取抽象信息,所以低层的网络可以反复使用,更改高层再训练以适用其他任务

到此这篇关于深度学习简介的文章就结束了,以后还会不断更新深度学习的文章,更多相关深度学习文章请搜索三水点靠木以前的文章或继续浏览下面的相关文章,希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python判断变量是否为Json格式的字符串示例
May 03 Python
CentOS 6.5下安装Python 3.5.2(与Python2并存)
Jun 05 Python
python爬虫爬取某站上海租房图片
Feb 04 Python
详解Python Qt的窗体开发的基本操作
Jul 14 Python
django多个APP的urls设置方法(views重复问题解决)
Jul 19 Python
pygame实现俄罗斯方块游戏(基础篇3)
Oct 29 Python
tensorflow 保存模型和取出中间权重例子
Jan 24 Python
python 解决print数组/矩阵无法完整输出的问题
Feb 19 Python
Python BeautifulReport可视化报告代码实例
Apr 13 Python
tensorflow实现残差网络方式(mnist数据集)
May 26 Python
python音频处理的示例详解
Dec 23 Python
python+opencv实现目标跟踪过程
Jun 21 Python
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
深度学习小工程练习之垃圾分类详解
python3美化表格数据输出结果的实现代码
Apr 14 #Python
Python生成九宫格图片的示例代码
用Python写一个简易版弹球游戏
python urllib库的使用详解
Apr 13 #Python
用Python将库打包发布到pypi
You might like
有关JSON以及JSON在PHP中的应用
2010/04/09 PHP
详解PHP神奇又有用的Trait
2019/03/25 PHP
彪哥1.1(智能表格)提供下载
2006/09/07 Javascript
Js 订制自己的AlertBox(信息提示框)
2009/01/09 Javascript
jquery 选择器部分整理
2009/10/28 Javascript
Jquery实战_读书笔记1—选择jQuery
2010/01/22 Javascript
jQuery 处理表单元素的代码
2010/02/15 Javascript
JavaScript CSS修改学习第二章 样式
2010/02/19 Javascript
AlertBox 弹出层信息提示框效果实现步骤
2010/10/11 Javascript
javascript生成随机大小写字母的方法
2014/02/20 Javascript
nodejs中的fiber(纤程)库详解
2015/03/24 NodeJs
jquery地址栏链接与a标签链接匹配之特效代码总结
2015/08/24 Javascript
详解key在Vue列表渲染时究竟起到了什么作用
2019/04/20 Javascript
使用layui 的layedit定义自己的toolbar方法
2019/09/18 Javascript
element中Steps步骤条和Tabs标签页关联的解决
2020/12/08 Javascript
python difflib模块示例讲解
2017/09/13 Python
Python 查找list中的某个元素的所有的下标方法
2018/06/27 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
python write无法写入文件的解决方法
2019/01/23 Python
详解python中各种文件打开模式
2020/01/19 Python
Marc Jacobs彩妆官网:Marc Jacobs Beauty
2017/07/03 全球购物
意大利高端时尚买手店:Stefania Mode
2018/03/01 全球购物
Vans奥地利官方网站:美国原创极限运动潮牌
2018/09/30 全球购物
时尚设计师手表:The Watch Cabin
2018/10/06 全球购物
如何手工释放资源
2013/12/15 面试题
物流合作计划书
2014/01/10 职场文书
网上开店必备创业计划书
2014/01/26 职场文书
县长群众路线对照检查材料思想汇报
2014/10/02 职场文书
群众路线专项整治方案
2014/10/27 职场文书
质检员工作总结2015
2015/04/25 职场文书
新员工试用期工作总结2015
2015/05/28 职场文书
毕业设计答辩开场白
2015/05/29 职场文书
常住证明范本
2015/06/23 职场文书
六一活动主持词
2015/06/30 职场文书
一起来学习Python的元组和列表
2022/03/13 Python
Java数组详细介绍及相关工具类
2022/04/14 Java/Android