初探机器学习:理解神经网络与反向传播的原理详解
最编程
2024-07-24 22:30:31
...
这是我参与8月更文挑战的第8天,活动详情查看:8月更文挑战
本文为吴恩达机器学习课程的笔记系列第二篇,主要学习神经网络前向传播与反向传播的算法原理及推导。
神经网络基础
概念介绍
人工神经网络(Artificial Neural Network)简称神经网络(NN)。神经网络是一种模拟人体神经元结构的数学模型,其神经元的连接是固定的。靠正向和反向传播来更新神经元。简单来说,神经网络是由一连串的神经层组成,每一层神经层里面存在有很多的神经元。
神经网络从逻辑上可以分为三层:
- 输入层(Input Layer):第一层,接收特征 。
- 输出层(Output Layer):最后一层,输出最终预测的假设 。
- 隐藏层(HiddenLayers):中间层,并不直接可见。
特点:
- 每一种神经网络都会有输入输出值
- 如何被训练:
- 大量的数据集
- 成千上万次的训练
- 错误中学习经验,对比预测答案与真实答案差别,反向传播改进识别。
下面以最简单的二层神经网络为例来具体介绍:
在上图神经网络中,记输入特征向量为 ,权重参数矩阵 ,偏置参数 , 表示每个神经元的输出,上标表示神经网络的层数(隐藏层为1)。
公式:
神经网络的计算步骤:
- 首先计算第一层网络中各节点相关数
- 使用激活函数计算
- 下一层同理,如此计算,直至输出最后的
- 可得最终的损失函数
向量化计算
第一层公式:
第二层公式:
推荐阅读
-
理解神经网络:向前推进(前向传播)与向后修正(BP反向传播)算法详解及计算原理
-
理解深度学习基础:从神经网络构造到实践 - 1.评分函数介绍 2.SVM损失函数解析 3.正规化惩罚项说明 4.Softmax与交叉熵损失函数详解 5.前向传播中的最优化挑战 6.批量大小(batch_size)实操指南...
-
初探机器学习:理解神经网络与反向传播的原理详解
-
深度学习入门(3):理解前向传播与反向传播的基本原理
-
理解深度学习:神经网络基础(三) - 前向传播、反向传播与计算图详解
-
理解神经网络的前向传播与反向传播机制:Python实战教程 - 第二步:反向传播详解
-
理解机器学习:K近邻(KNN)算法的基本工作原理与优缺点详解