全连接神经网络
定义
深度学习最基础的网络类型的之一,全连接神经网络(Full Connect Neural Network)是大多数入门深度学习领域的初学者必学的内容,充分体现深度学习方法相比于传统机器学习算法的特点,即大数据驱动、去公式推导、自我迭代更新、黑匣子训练等。
单层神经网络
单层神经网络(Single Layer Neural Network)是最简单的神经网络类型,它只包含一个输入层、一个隐藏层和一个输出层。
Logistic回归模型是最简单的单层网络,常被用来处理二分类问题,它使一种用于分析各种影响因素(x1,x2)与分类结果y之间的有监督学习方法
线性回归公式:z = w1x1 + w2x2 + …+ b
放入sigmoid函数:y = 1/(1+e^-z)
上式中w为权值,b为偏置,x为输入值,z为线性输出值,y为非线性输出值。
输出永远卡在 0‑1,刚好代表概率!
正向传播
正向传播是指从输入层到输出层的传播过程,它包括了将输入数据通过神经网络的层进行计算,最终得到输出结果。此计算过程等同于线性回归计算,即给每一个输入向量x分配权值,计算出一个结果向量z。同时,为了使神经网络具有非线性特点,引入激活函数来处理线性变换得到的数值。
损失函数
模型需要定义损失函数来对参数w 和b 进行优化进行优化,损失函数的选择需要具体问题具体分析
平方损失函数:L = 1/2 * (y_pred - y_true)^2
对数似然损失函数:L=-[y_true * log(y_pred)] + (1-y_true) * log(1-y_pred)
上式中y_true为真实标签,y_pred为预测标签
- 损失数值越大:模型预测越离谱
- 损失数值越小:预测越精准
- 损失≈0:预测基本全对
反向传播
反向传播是指从输出层到输入层的传播过程,它包括了将损失函数的梯度传递回神经网络的层,用于更新模型参数w 和b。
- 损失对 z 求导 :dL/dz=y_pred-y_true
- 对w、b 求偏导 :dL/dw=dL/dzx ,dL/db=dL/dz1 偏置 b 没有输入特征相乘,梯度直接等于dL/dz
梯度下降
梯度下降(Gradient Descent)是一种用于优化模型参数的优化算法,它通过迭代更新模型参数w 和b,使得损失函数L最小化。
- 初始化模型参数w 和b
- 计算损失函数L的梯度dL/dw 和dL/db
- 更新模型参数w 和b:w := w - αdL/dw ,b := b - αdL/db (α为学习率)
- 重复步骤2和3,直到模型参数w 和b不再显著变化
网络参数
- 参数:指算法运行迭代、修正最终稳定的值。权重W和偏置b。
- 超参:开发者人为设定的值。学习率、迭代次数、隐藏层层数、单元节点数、激活函数等


