相关-10. 万能近似定理(universal approximation theorem)

万能近似定理表明,具有足够隐藏单元的单层神经网络理论上可以近似任何函数,但在实践中,优化算法可能无法找到目标函数或因过拟合而失败。深度学习模型比浅层网络更容易训练,避免过拟合,且研究表明,深度模型的简化版(影子模型)有时能取得更好效果。当前趋势倾向于深度神经网络,因其从简单到复杂的渐进学习方式有助于找到更好的解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 万能近似定理

李沐老师在课上大概描述过:一层的感知机,理论上可以拟合任何一个函数,但是实际上无法实现,因为优化函数接不住

用官方的语言描述:

万能近似定理(universal approximation theorem),是深度学习最根本的理论依据。它声明了在给定网络具有足够多的隐藏单元的条件下,配备一个线性输出层和一个带有任何“挤压”性质的激活函数(如logistic sigmoid激活函数)的隐藏层的前馈神经网络,能够以任何想要的误差量近似任何从一个有限维度的空间映射到到另一个有限维度空间的Borel可测的函数。

万能近似定理其实说明了理论上神经网络可以近似任何函数。

  • 但实践上我们不能保证学习算法一定能学习到目标函数。
  • 即使网络可以表示这个函数,学习也可能因为两个不同的原因而失败。
    • 第一,训练算法可能无法找到目标函数的参数值;
    • 第二,训练算法可能由于过拟合而选择了错的函数。
  • 斯坦福的cs231n中提到,更深的模型更容易让目前的优化算法学习到
    • 和直觉不太符合的是,该课程中进一步提出, bigger neural networks更容易学习到最优解
    • 有意思的是,如果我们先用deep模型学习完,再用一个shadow去模拟这个模型,效果有可能比deep模型还好,但直接用shadow模型去学习原始样本却会表现很差。Do Deep Nets Really Need to
03-25
### Multilayer Perceptron (MLP) 网络架构及其使用 #### 定义与基本结构 多层感知器(Multilayer Perceptron, MLP)是一种前馈人工神经网络模型,它由多个层次组成,通常包括输入层、一个或多个隐藏层以及输出层。每一层中的神经元通过加权连接到下一层的神经元,并且不具有反馈连接或跨层连接[^2]。 MLP 的核心特性在于其能够逼近任意复杂的函数关系的能力,这得益于通用近似定理Universal Approximation Theorem),该理论表明,在某些条件下,单隐层的前馈网络可以以任意精度逼近任何连续函数[^1]。 #### 工作原理 在 MLP 中,数据从输入层传递至输出层的过程中会经历一系列线性和非线性变换。具体来说: - **输入层**接收原始特征向量作为输入。 - **隐藏层**执行计算操作,其中每个神经元应用激活函数 \( f \),例如 Sigmoid 函数、ReLU 或 Tanh 来引入非线性: \[ y_j = f\left(\sum_{i=1}^{n} w_{ij}x_i + b_j\right) \] 这里 \( x_i \) 是输入变量,\( w_{ij} \) 表示权重矩阵中的元素,而 \( b_j \) 则表示偏置项。 - **输出层**提供最终预测结果,形式取决于任务需求——分类问题可能采用 Softmax 激活函数;回归问题则常用线性激活函数。 #### 训练过程 为了调整网络参数使其更好地拟合目标分布,需定义损失函数并利用优化算法最小化之。常见做法是以梯度下降法为基础更新权重和偏差值。反向传播技术被广泛应用于高效计算误差相对于各参数的部分导数,从而指导后续迭代方向[^3]。 以下是基于 TensorFlow/Keras 实现的一个简单例子展示如何构建及训练一个用于解决二分类问题的小型 MLP 模型: ```python from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Dense model = Sequential([ Dense(64, activation='relu', input_shape=(input_dim,)), Dense(32, activation='relu'), Dense(1, activation='sigmoid') ]) model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy']) history = model.fit(X_train, y_train, epochs=50, batch_size=32, validation_split=0.2) ``` 此脚本首先创建了一个顺序堆叠三层全连接层组成的序列模型对象 `Sequential` ,接着配置好编译选项指定使用的优化器类型为 Adam 和评估标准包含准确率指标之后便调用了 fit 方法启动实际的学习流程。 #### 应用领域 由于具备强大的表达能力,MLPs 被成功部署于众多应用场景之中,比如但不限于图像识别、自然语言处理、时间序列分析等领域内的模式匹配任务当中[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吨吨不打野

解决了问题,觉得还行就给点

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值