当前位置: 首页 > news >正文

前端网站开发课程360网站开发

前端网站开发课程,360网站开发,手机制作logo神器,公司网站大顶图怎么做文章目录 PReLU函数导函数函数和导函数图像优缺点pytorch中的PReLU函数tensorflow 中的PReLU函数 PReLU 参数化修正线性单元:Parametric ReLU 函数导函数 PReLU函数 P R e L U { x x > 0 α x x < 0 ( α 是可训练参数 ) \rm PReLU \left\{ \begin{array}{} x \qua…

文章目录

    • PReLU
      • 函数+导函数
      • 函数和导函数图像
      • 优缺点
      • pytorch中的PReLU函数
      • tensorflow 中的PReLU函数

PReLU

  • 参数化修正线性单元:Parametric ReLU

函数+导函数

  • PReLU函数
    P R e L U = { x x > = 0 α x x < 0 ( α 是可训练参数 ) \rm PReLU = \left\{ \begin{array}{} x \quad & x>= 0 \\ \alpha x \quad & x<0 \end{array} \right. \quad (\alpha 是可训练参数) PReLU={xαxx>=0x<0(α是可训练参数)
    其中,α 是一个可学习的参数,它在训练过程中被优化。

  • PReLU函数导数
    d d x P R e L U = { 1 x ≥ 1 α x < 0 ( α 是可训练参数 ) \frac{d}{dx} \rm PReLU = \left\{ \begin{array}{} 1 \quad x \ge1 \\ \alpha \quad x < 0 \end{array} \right. \quad (\alpha 是可训练参数) dxdPReLU={1x1αx<0(α是可训练参数)
    它和 ReLU 函数的不同之处在于,当 x 小于零时,PReLU 函数的导数值是可学习的参数 α,而不是固定的常数。这使得 PReLU 函数在负值区域的斜率可以自适应地调整。


函数和导函数图像

  • 画图

    下面是的优化完成 α = 0.5 \alpha = 0.5 α=0.5 后的情况,请注意, LeakyReLU 中 ,p 是固定值,一般设置为较小值,而 PReLU 中, α \alpha α 是可训练对象,在训练阶段是不断学习变化的。

    import numpy as np
    from matplotlib import pyplot as plt# 定义 PReLU 函数
    def prelu(x, alpha=0.25):return np.where(x < 0, alpha * x, x)# 定义 PReLU 的导数
    def prelu_derivative(x, alpha=0.25):d = np.where(x < 0, alpha, 1)return d# 生成数据
    x = np.linspace(-2, 2, 1000)
    alpha = 0.5  # 可以调整 alpha 的值
    y = prelu(x, alpha)
    y1 = prelu_derivative(x, alpha)# 绘制图形
    plt.figure(figsize=(12, 8))
    ax = plt.gca()
    plt.plot(x, y, label='PReLU')
    plt.plot(x, y1, label='Derivative')
    plt.title(f'PReLU (alpha={alpha}) and Partial Derivative')# 设置上边和右边无边框
    ax.spines['right'].set_color('none')
    ax.spines['top'].set_color('none')# 设置 x 坐标刻度数字或名称的位置
    ax.xaxis.set_ticks_position('bottom')# 设置边框位置
    ax.spines['bottom'].set_position(('data', 0))
    ax.yaxis.set_ticks_position('left')
    ax.spines['left'].set_position(('data', 0))plt.legend(loc=2)
    plt.show()
    

    image-20250205103051743


优缺点

  • PReLU函数相对于ReLU函数的改进
    1. 在负值域,PReLU的斜率较小,这也可以避免Dead ReLU问题。与ELU相比,PReLU在负值域是线性运算。尽管斜率很小,但不会趋于 0 。
    2. 公式与Leaky ReLu相似,但并不完全一样。 α \alpha α 可以是常数,或自适应调整的参数。也就是说,如果让 α \alpha α 自适应,那么PReLu会在反向传播时更新参数 。
    3. 参数 通常为 0 到 1 之间的数字,并且通常相对较小。
      (1)如果 α \alpha α = 0,则 变为ReLU。
      (2)如果 α \alpha α > 0,则 变为leaky ReLU。
      (3)如果 α \alpha α 是可学习的参数,则 变为PReLU。
  • PReLU 的优点

    1. 参数可训练:PReLU具有可训练的参数alpha,它可以随着训练的进行而自动调整,从而使得模型能够更好地适应不同的数据集。
    2. 解决梯度消失问题:由于PReLU在输入小于0时梯度不为0,因此可以避免训练过程中的梯度消失问题。
    3. 增强模型表达能力:与ReLU函数相比,PReLU函数能够更好地处理负数输入,提升了模型的表达能力和学习能力。
    4. 提高模型的鲁棒性:PReLU函数的参数alpha能够根据数据自动调整,增强了模型对于噪声和异常值的鲁棒性。
    5. 良好的拟合能力:PReLU函数在负数输入时具有非线性特点,能够更好地拟合非线性的数据模式和任务。
    6. 平滑性:PReLU函数在整个定义域上都是光滑的,包括0点处。这种平滑性使得梯度计算更加稳定,有助于优化算法的训练过程。
  • PReLU 的缺点

    1. 计算复杂度增加:由于PReLU需要额外的参数alpha,因此其计算复杂度比ReLU略高。
    2. 参数选择敏感:alpha的值对模型的性能有很大影响,如果选择不当,可能会对模型的训练产生负面影响。
    3. 增加模型复杂度:PReLU引入了可学习的参数alpha,这会增加模型的复杂度和训练时间。
    4. 对异常值和噪声敏感:PReLU对异常值和噪声相对较为敏感,容易导致模型过拟合。

pytorch中的PReLU函数

  • 代码

    import torchf = torch.nn.PReLU(init=0.5) # 注意,alpha的初始值通过init设置,默认是0.25
    x = torch.randn(2)prelu_x = f(x)print(f"x: \n{x}")
    print(f"prelu_x:\n{prelu_x}")"""输出"""
    x: 
    tensor([-0.8802,  0.2288])
    prelu_x:
    tensor([-0.4401,  0.2288], grad_fn=<PreluKernelBackward0>)

    注意,alpha的初始值通过init设置,默认是0.25,当前设置为0.5


tensorflow 中的PReLU函数

  • 代码

    python: 3.10.9

    tensorflow: 2.18.0

    import tensorflow as tf# 创建 PReLU 激活函数层
    prelu = tf.keras.layers.PReLU(alpha_initializer=tf.initializers.constant(0.5))# 生成随机输入
    x = tf.random.normal([2])# 应用 PReLU 激活函数
    prelu_x = prelu(x)print(f"x: \n{x}")
    print(f"prelu_x:\n{prelu_x}")"""输出"""
    x: 
    [-2.5138278  -0.34734365]
    prelu_x:
    [-1.2569139  -0.17367183]
    

    注意,alpha的初始值通过alpha_initializer设置,不可直接传入数值,需要使用

    tf.initializers.constant(0.5)
    

    的这种方式,当前设置为0.5。


http://www.yayakq.cn/news/155636/

相关文章:

  • 兼职做效果图的网站wordpress主题放在哪个文件夹
  • 公司网站高端网站建设网络营销10大平台
  • 商务网站建设与维护流程山亭建设局网站
  • 公司网站开发语言seo研究中心论坛
  • 做网站的职位叫什么现在建网站挣钱吗
  • 站群宝塔批量建站苏州建站网站
  • 鲜花店网站建设的总结新渝网
  • 想要个网站如何做网站客户端
  • 做房地产用什么网站好滁州新手跨境电商建站哪家好
  • 简洁网站布局软件开发模型有哪些各有什么特点
  • 外国男男做暧暧视频网站wordpress快递主题
  • 开发公司代收业主契税如何记账上海优化外包公司
  • 为什么找不到做网站的软件网站开发一般有那些语言
  • 做音频的网站襄阳网站建设知名品牌
  • 编程的网站都有哪些网站如何做企业电子宣传册
  • 禅城教育网站建站电子商务网站建设基本组成
  • 成都网站建设技巧免费的站外推广
  • 网站虚拟主机费用cpanel wordpress
  • 外国做袜子的网站免费的图片做视频在线观看网站
  • 在那些免费网站做宣传效果好免费下载网站软件
  • 做响应式网站的菜单栏动漫制作教学
  • 网站流量与广告费深圳本地网站建设
  • 珠海高端网站开发我们公司在做网站推广
  • 房地产的设计网站建设ps做网站一般用多大字体
  • 旅游网站建设的概念做生意网站
  • 360网站建设服务公司门户最新版下载
  • php网站后台入口网站设计背景怎么写
  • 图书馆网站结构怎么做做网站的空间是啥
  • 长沙 做营销型网站的公司怎样做自己的微商网站
  • 湘潭网站建设 电话磐石网络小型企业网站建设旅游景点网论文