激活函数和Loss的梯度

激活函数及其梯度

1.1Sigmoid函数及图像

在这里插入图片描述

1.2Sigmoid导数

在这里插入图片描述

1.3Sigmoid使用

在这里插入图片描述

2.1Tanh函数及图像

在这里插入图片描述

2.2Tanh导数

在这里插入图片描述

2.3Tanh使用

在这里插入图片描述

3.1ReLU函数及图像

在这里插入图片描述

3.2ReLU导数

在这里插入图片描述

3.3ReLU使用

在这里插入图片描述

Loss及其梯度

1.1MSE(Mean Squared Error)

在这里插入图片描述

1.2MSE导数

在这里插入图片描述

### 自适应激活函数在PINN中的梯度消失解决方案 自适应激活函数在内嵌物理知识神经网络(PINN)中可能导致梯度为零的问题,这通常源于激活函数的选择及其参数化方式。以下是针对该问题的详细分析可能的解决方案。 #### 1. 激活函数的设计与梯度消失的关系 传统的固定激活函数(如ReLU、Sigmoid等)可能存在饱区域,在这些区域内导数接近于零,从而导致反向传播过程中梯度逐渐减小甚至完全消失[^1]。对于自适应激活函数而言,如果其可调参数未能有效更新或者陷入局部最优,则同样会引发类似的梯度消失现象。 为了缓解这一情况,可以考虑以下几种策略: #### 2. 使用更稳定的优化器 尽管标准随机梯度下降(SGD)能够完成模型训练任务,但在处理复杂非线性映射时表现欠佳。引入带有动量(Momentum)[^2]或其他高级变体(Adam, RMSprop等),有助于加速收敛并减少震荡效应带来的负面影响。例如 Adam 通过维护指数移动平均估计来调整每一轮迭代的学习率,使得即使面对稀疏数据也能保持良好的性能。 ```python import torch.optim as optim optimizer = optim.Adam(model.parameters(), lr=0.001) ``` #### 3. 改进初始化技术 恰当设置权重初值范围至关重要,它直接影响到前几轮epoch期间信号能否顺利传递至深层结构而不被抑制或放大过多倍数以至于溢出。Xavier He 初始化方法分别适用于tanh类及ReLU 类型节点层面上较好地平衡了输入输出范数值之间的关系,防止因极端分布造成的信息丢失风险增加。 ```python def init_weights(m): if isinstance(m, nn.Linear): torch.nn.init.xavier_uniform_(m.weight) model.apply(init_weights) ``` #### 4. 设计新型自适应激活单元 除了简单乘加操作外还可以探索更多形式灵活多样的表达式组合而成的新颖组件作为候选对象替代传统单一模式版本;比如Softplus 函数既具备平滑过渡特性又能避免硬截断弊端因此成为不错选项之一另外还有Swish 这种由Google 提出来的自我门控机制也显示出优异潜力值得尝试应用其中一部分场景下取得超越常规做法的效果提升幅度明显可见一斑[^3]. ```python class AdaptiveActivation(nn.Module): def __init__(self, dim): super().__init__() self.alpha = nn.Parameter(torch.ones(dim)) def forward(self,x): return F.softplus(self.alpha*x) act_layer = AdaptiveActivation(input_dim) output = act_layer(tensor_input) ``` #### 5. 正则化手段辅助稳定训练过程 适当加入L1/L2 范数惩罚项控制整体规模不至于过大偏离正常轨迹之外还能促进泛化能力增强抵抗过拟合倾向发生概率降低最终达到双赢局面同时也有助于维持健康状态下的梯度流动路径畅通无阻塞状况出现几率大大减少. ```python lambda_reg = 0.01 l2_loss = sum(p.pow(2).sum() for p in model.parameters()) loss_total = loss_main + lambda_reg*l2_loss ``` --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值