DBBH的AI学习笔记

数学本质:为什么"线性变换+ReLU"能逼近任意函数?

这源于万能近似定理(Universal Approximation Theorem)

万能近似定理是非常关键的东西

1. 单层ReLU网络:能逼近什么?​

如果只有1层(输入→ReLU→输出,无线性变换),ReLU是f(x)=max(0,x),只能逼近"分段线性函数"(如V型、阶梯状),无法逼近曲线(如y=x²)。

例子:用1层ReLU(y=ReLU(wx+b))拟合y=x²,无论怎么调w和b,最多得到一条折线,无法拟合抛物线。

2. 多层"线性变换+ReLU":如何逼近曲线?​

多层网络中,每一层的ReLU将前一层线性变换的结果"非线性折叠",多层叠加后,就能形成复杂的曲线。

以2层网络拟合y=x²为例:

第1层(线性变换+ReLU):将x映射为5个非线性特征(如h1=ReLU(w1x+b1),h2=ReLU(w2x+b2),...);

第2层(线性变换):将这些特征加权求和(y=w1h1 + w2h2 + ... + b),通过调整权重w1,w2,...,让总和逼近x²。

直观理解:就像用"乐高积木"搭曲线------每一层ReLU是"折角",多层叠加后就能拼出任意曲线。

所以本质上就是用离散的线段来拟合曲线的概念,每一层可能有非常多的神经元,总共可能需要非常多的层数,所以可能产生上千亿个未知参数的问题,所以需要GPU农场才能计算得到结果

训练任务通常是未知函数形状的,那么猜就非常随机,这里有一些可以参考的前辈的经验

1. 任务复杂度​

简单任务(如线性回归、二分类手写数字"0/1"):函数关系简单,用浅层网络(1-2个隐藏层,每层几十个神经元)即可。

复杂任务(如ImageNet图像分类、语音识别):函数关系复杂(高维、非线性、多模态),需深层网络(10+层,每层数百至数千神经元)。

2. 数据规模​

小数据(样本数<1万):用简单结构(避免过拟合),如1-2个隐藏层,神经元数<100。

大数据(样本数>10万):可用复杂结构(数据足够"喂饱"模型),如5-10个隐藏层,神经元数数百至数千。

3. 计算资源​

资源有限(如手机端部署):用轻量化结构(如MobileNet,层数少、神经元少);

资源充足(如服务器训练):可尝试深层网络(如ResNet-101,101层)。

三、经验法则:从"简单到复杂"的试错流程​

虽然没有公式,但行业内有通用经验法则,帮你快速缩小试错范围。以下按"从简到繁"排序:

  1. 起点:用"最小可行结构"测试

原则:先假设函数简单,用浅层小网络试跑,观察效果(是否欠拟合)。

回归任务(如预测房价):1个隐藏层,神经元数=输入特征数(或输入特征数的2倍)。

例:输入5个特征(面积、房龄、地段等)→ 隐藏层5-10个神经元。

分类任务(如二分类):1-2个隐藏层,神经元数=输入特征数(或√输入特征数)。

例:输入20个特征(用户行为数据)→ 隐藏层10-20个神经元

参数的个数统计原理

假设全连接层的输入维度为 576(如展平后的特征图),输出维度为 10(如MNIST分类任务的10个类别):

权重参数(Weights):每个输出神经元需要与所有输入神经元连接,因此权重数量为:

输入维度×输出维度=576×10=5760

偏置参数(Biases):每个输出神经元有一个偏置,因此偏置数量为:

输出维度=10

总参数数量:

5760 (权重)+10 (偏置)= 5770

2025年目前的常用激活函数列表

Sigmoid

Tanh

ReLu

leaky ReLu

Swish

SoftMax

GELU

相关推荐
清铎2 小时前
项目_一款基于RAG的金融保险业务多模态问答assistant
人工智能
新科技事物2 小时前
编曲常用软件哪个好,音乐人实测AI编曲软件优化体验
人工智能
天若有情6732 小时前
省市聚力:软件产业的“中国土壤”与“创新脊梁”
大数据·人工智能·microsoft
青衫码上行2 小时前
如何构建maven项目
java·学习·maven
June bug2 小时前
【实习笔记】正交实验法设计测试用例
笔记·学习·测试用例
Jerryhut2 小时前
目标检测算法综述1
人工智能·目标检测·计算机视觉
GDAL2 小时前
人工智能AI在书签篮分类中的应用落地
人工智能·分类·bert·书签篮·书签栏
OLOLOadsd1232 小时前
自然景观分类与识别_YOLO11_C3k2_IDWC改进方法详解
人工智能·分类·数据挖掘
2501_941329722 小时前
棉田方向识别与分类_yolo11-seg-repvit实现_1
人工智能·分类·数据挖掘