常见 平滑函数

平滑函数是指具有较为连续和缓和性质的数学函数。这类函数通常在局部小范围内变化不大,避免了突变或者急剧的波动。以下是一些常见的平滑函数:

  1. 高斯函数(Gaussian Function)

高斯函数是一种常见的平滑函数,具有钟形曲线。其一维形式为:
在这里插入图片描述
其中,μ 是均值,σ 是标准差。

  1. sigmoid 函数

Sigmoid 函数是一种常用的平滑函数,其形状呈 S 形。其一维形式为:
在这里插入图片描述

Sigmoid 函数常用于二分类问题的激活函数。

  1. tanh 函数

tanh 函数是一种类似于 Sigmoid 的平滑函数,其值范围在 [−1,1][−1,1] 之间。其一维形式为:
在这里插入图片描述

tanh 函数常用于神经网络的激活函数。

  1. B样条函数(B-Spline Function)

B样条函数是一种用于曲线和曲面建模的平滑函数。它通过基函数的线性组合来逼近目标函数。

  1. Loess 平滑函数

Loess(局部加权散点平滑法)是一种局部回归方法,用于拟合数据并生成平滑曲线。它在每个数据点附近拟合一个局部的多项式,并将结果拼接在一起。

  1. 移动平均(Moving Average)

移动平均是一种平滑时间序列的方法,通过计算窗口内数据的平均值来平滑曲线。简单移动平均和指数移动平均是常见的两种形式。

这些平滑函数在不同的场景中有不同的应用,例如在信号处理、数据分析、机器学习等领域。选择合适的平滑函数通常取决于数据的性质和具体问题的要求。

机器学习中,损失函数是用来度量模型预测结果与实际标签之间的差异的函数平滑的损失函数可以帮助模型更好地学习,并且在优化过程中更容易收敛到较好的结果。 在 Python 中,有许多平滑的损失函数可供选择。以下是一些常见平滑损失函数: 1. 平方损失函数(Mean Squared Error, MSE):它衡量预测值与实际值之间的均方差。定义如下: ```python def mse_loss(y_true, y_pred): return np.mean((y_true - y_pred)**2) ``` 2. 平均绝对误差(Mean Absolute Error, MAE):它衡量预测值与实际值之间的绝对差异的平均值。定义如下: ```python def mae_loss(y_true, y_pred): return np.mean(np.abs(y_true - y_pred)) ``` 3. 平滑L1损失函数(Smooth L1 Loss):它在误差小于一个阈值时使用L2损失,否则使用L1损失。这样可以使得损失函数在误差较小时平滑,在误差较大时鲁棒性更强。定义如下: ```python def smooth_l1_loss(y_true, y_pred, delta=1.0): diff = np.abs(y_true - y_pred) return np.where(diff < delta, 0.5 * diff**2, delta * (diff - 0.5 * delta)) ``` 4. Huber损失函数:它在误差较小时使用平方损失,在误差较大时使用绝对损失,通过一个参数 delta 来控制转折点。定义如下: ```python def huber_loss(y_true, y_pred, delta=1.0): diff = np.abs(y_true - y_pred) return np.where(diff < delta, 0.5 * diff**2, delta * (diff - 0.5 * delta)) ``` 这些平滑的损失函数可以根据具体的任务需求进行选择和使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值