广告
返回顶部
首页 > 资讯 > 后端开发 > Python >理解深度学习之深度学习简介
  • 429
分享到

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

2024-04-02 19:04:59 429人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

机器学习 在吴恩达老师的课程中,有过对机器学习的定义: ML:<P T E> P即perfORMance,T即Task,E即Experience,机器学习是对一个Task

机器学习

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

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()

fig1

开源框架

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

当前有两大主流的深度学习框架:PyTorchTensorflow

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

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

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

vfig2

深度学习计算重复且体量巨大,所以需要将模型部署到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的低层可以提取位置信息(边,角等精细信息),高层提取抽象信息,所以低层的网络可以反复使用,更改高层再训练以适用其他任务

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

--结束END--

本文标题: 理解深度学习之深度学习简介

本文链接: https://www.lsjlt.com/news/123584.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 理解深度学习之深度学习简介
    机器学习 在吴恩达老师的课程中,有过对机器学习的定义: ML:<P T E> P即performance,T即Task,E即Experience,机器学习是对一个Task...
    99+
    2022-11-12
  • Python深度学习 深度学习入门基于
    《Python深度学习》由Keras之父、现任Google人工智能研究员的弗朗索瓦•肖莱(François Chollet)执笔,详尽介绍了用Python和Keras进行深度学习的探索实践,涉及计算机视觉、自然语言处理、生成式模型等应用。书...
    99+
    2023-01-31
    深度 入门 Python
  • 深度学习详解之初试机器学习
    机器学习可应用在各个方面,本篇将在系统性进入机器学习方向前,初步认识机器学习,利用线性回归预测波士顿房价; 原理简介 利用线性回归最简单的形式预测房价,只需要把它当做是一次线性函数y...
    99+
    2022-11-12
  • 深入学习SpringCloud之SpringCloud简介
    Spring Cloud是什么? SpringCloud官网:http://spring.io Spring Cloud是一个一站式的开发分布式系统的框架,为开发者提供了一系列的构建...
    99+
    2022-11-12
  • 深度学习之GPU,CUDA和cuDNN的理解
    我们知道做深度学习离不开GPU,不过一直以来对GPU和CPU的差别,CUDA以及cuDNN都不是很了解,所以找了些资料整理下,希望不仅可以帮助自己理解,也能够帮助到其他人理解。 先来...
    99+
    2023-02-13
    gpu和cuda的关系 cuda与cudnn cuda有什么用
  • opencv深入浅出了解机器学习和深度学习
    目录机器学习kNN算法图解kNN算法用kNN算法实现手写数字识别SVM算法图解SVM算法使用SVM算法识别手写数据k均值聚类算法图解k均值聚类算法使用k均值聚类算法量化图像颜色深度学...
    99+
    2022-11-13
  • PyTorch 深度学习入门
    💂 个人网站:【 海拥】【萌怪大冒险】【2048】🤟 风趣幽默的前端学习课程:👉28个案例趣学前端💅 想寻找共同学习交流、摸鱼划水的...
    99+
    2023-09-25
    pytorch 深度学习 python
  • 【李沐】动手学深度学习 学习笔记
    目录 【内容介绍】动手学深度学习-基于pytorch版本【脉络梳理】预备知识数据操作数据预处理线性代数矩阵计算自动求导 线性神经网络线性回归深度学习的基础优化算法线性回归的从零开始实现线...
    99+
    2023-08-31
    深度学习 学习 python
  • Python Pytorch深度学习之Tensors张量
    目录一、Tensor(张量)二、操作总结环境:Anaconda自带的编译器——Spyder 最近才开使用conda,发现conda 就是 yyds,爱啦~ 一、Tensor(张量)...
    99+
    2022-11-12
  • 深度学习tensorflow基础mnist
    软件架构 mnist数据集的识别使用了两个非常小的网络来实现,第一个是最简单的全连接网络,第二个是卷积网络,mnist数据集是入门数据集,所以不需要进行图像增强,或者用生成器读入内存...
    99+
    2022-11-12
  • Python深度学习之Pytorch初步使用
    目录一、Tensor二、Pytorch如何创建张量2.1 创建张量2.2 tensor与ndarray的关系2.3 常用api2.4 常用方法三、数据类型3.1 获取数据类型四、tensor的其他操作4.1 相加4....
    99+
    2022-06-02
    Python Pytorch python深度学习
  • Python Pytorch深度学习之自动微分
    目录一、简介二、TENSOR三、梯度四、Example——雅克比向量积总结一、简介 antograd包是Pytorch中所有神经网络的核心。autograd为Tensor上的所有操作...
    99+
    2022-11-12
  • Python Pytorch深度学习之神经网络
    目录一、简介二、神经网络训练过程2、通过调用net.parameters()返回模型可训练的参数3、迭代整个输入4、调用反向传播5、计算损失值6、反向传播梯度7、更新神经网络参数总结...
    99+
    2022-11-12
  • Python Pytorch深度学习之核心小结
    目录一、Numpy实现网络二、Pytorch:Tensor三、自动求导1、PyTorch:Tensor和auto_grad总结Pytorch的核心是两个主要特征: 1.一个n维ten...
    99+
    2022-11-12
  • pyTorch深度学习softmax实现解析
    目录用PyTorch实现linear模型模拟数据集定义模型加载数据集optimizer模型训练softmax回归模型Fashion-MNISTcross_entropy模型的实现利用...
    99+
    2022-11-12
  • 深度学习&故障诊断初学者 - 学习路线
    针对该领域初学者,经常有人一头雾水,不知如何学习,因此本文提供了一个学习路线 注:以下路线适合使用深度学习做故障诊断的初学者(建议使用Python、pytorch) 深度学习+故障诊断学习路线 ...
    99+
    2023-09-02
    python 人工智能 深度学习
  • Python深度强化学习之DQN算法原理详解
    目录1 DQN算法简介2 DQN算法原理2.1 经验回放2.2 目标网络3 DQN算法伪代码DQN算法是DeepMind团队提出的一种深度强化学习算法,在许多电动游戏中达到人类玩家甚...
    99+
    2022-11-12
  • 深度学习和机器学习有哪些区别
    本文小编为大家详细介绍“深度学习和机器学习有哪些区别”,内容详细,步骤清晰,细节处理妥当,希望这篇“深度学习和机器学习有哪些区别”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。深度学习和机器学习最大的区别就是“性能...
    99+
    2023-06-29
  • 深度学习和机器学习有什么差别
    深度学习和机器学习是两个相关但不同的概念。机器学习是一种广义的概念,指的是让计算机系统通过学习数据并改善性能,而不是通过显式的编程。...
    99+
    2023-09-20
    深度学习
  • 深度学习框架之MXNet怎么使用
    使用MXNet进行深度学习主要有以下几个步骤:1. 安装MXNet:可以通过pip命令进行安装,例如`pip install mxn...
    99+
    2023-09-21
    深度学习 MXNet
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作