ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Pytorch入门

2022-01-30 15:58:33  阅读:235  来源: 互联网

标签:入门 sigmoid -- tanh relu Pytorch np 函数


目录

环境配置

查看cuda是否安装完成

sigmod与relu函数


环境配置

查看cuda是否安装完成

查看在该目录下是否存在该文件。

在cmd命令行输入nvcc- V可以查看你的cuda版本。

查看Pytorch版本以及GPU是否可用

 

import torch

print(torch.__version__)
print('gpu:',torch.cuda.is_available())

sigmod与relu函数

 

Relu是一个非常优秀的激活哈数,相比较于传统的sigmod函数,有三个作用:
1. 防止梯度弥散
2. 稀疏激活性
3. 加快计算

sigmoid的导数只有在0附近的时候有比较好的激活性,在正负饱和区的梯度都接近于0,所以这会造成梯度弥散,而relu函数在大于0的部分梯度为常数,所以不会产生梯度弥散现象。第二,relu函数在负半区的导数为0 ,所以一旦神经元激活值进入负半区,那么梯度就会为0,也就是说这个神经元不会经历训练,即所谓的稀疏性。第三,relu函数的导数计算更快,程序实现就是一个if-else语句,而sigmoid函数要进行浮点四则运算。

在隐藏层,tanh函数要优于sigmoid函数,可以认为是sigmoid的平移版本,优势在于其取值范围介于-1 ~ 1之间,数据的平均值为0,而不像sigmoid为0.5,有类似数据中心化的效果。

在输出层,sigmoid也许会优于tanh函数,原因在于你希望输出结果的概率落在0 ~ 1 之间,比如二元分类,sigmoid可作为输出层的激活函数。

实际应用中,特别是深层网络在训练时,tanh和sigmoid会在端值趋于饱和,造成训练速度减慢,故深层网络的激活函数默认大多采用relu函数,浅层网络可以采用sigmoid和tanh函数。

import numpy as np
import matplotlib.pyplot as plt

def sigmoid(x):
    return 1 / (1 + np.exp(-x))

def tanh(x):
    return (np.exp(x) - np.exp(-x)) / (np.exp(x) + np.exp(-x))

def relu(x):
    return np.maximum(0, x)

x = np.arange(-5, 5, 0.1)
fig,(ax1,ax2,ax3)=plt.subplots(3)
y1 = tanh(x)
ax1.plot(x, y1)
ax1.set_title('tanh')
ax1.axhline(ls='--', color='r')
ax1.axvline(ls='--', color='r')


y2 = sigmoid(x)
ax2.plot(x, y2)
ax2.set_title('sigmoid')
ax2.axhline(0.5, ls='--', color='r')
ax2.axvline(ls='--', color='r')

y3 = relu(x)
ax3.plot(x, y3)
ax3.set_title('relu')
ax3.axvline(ls='--', color='r')

plt.tight_layout()
plt.show()

参考网站:深度学习笔记(4)——Sigmoid和Relu激活函数的对比_迷川浩浩的博客-CSDN博客_sigmoid函数和relu函数区别

标签:入门,sigmoid,--,tanh,relu,Pytorch,np,函数
来源: https://blog.csdn.net/kongqing23/article/details/122752456

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有