神经网络基础-神经网络补充概念-27-深层网络中的前向传播

概念

深层神经网络中的前向传播是指从输入数据开始,逐层计算每个神经元的输出值,直到得到最终的预测值。

一般步骤

1输入数据传递:

将输入数据传递给网络的输入层。输入数据通常是一个特征矩阵,每一列代表一个样本,每一行代表一个特征。

2加权求和和激活函数:

对于每个隐藏层,进行以下步骤:

3计算加权输入,即将输入数据与权重矩阵相乘并加上偏置向量。

将加权输入传递给激活函数,得到该隐藏层的激活值(输出)。常用的激活函数包括Sigmoid、ReLU、Tanh等。

4传递至下一层:

将当前隐藏层的输出作为下一隐藏层的输入,重复步骤 2,直到到达输出层。输出层的输出即为网络的预测值。

5返回预测值和缓存:

返回预测值(输出层的输出)以及在计算过程中保存的缓存(各层的加权输入和激活值),这些缓存在反向传播中会用到。

代码实现

python 复制代码
import numpy as np

# Sigmoid 激活函数
def sigmoid(x):
    return 1 / (1 + np.exp(-x))

# 初始化参数
def initialize_parameters(layer_dims):
    parameters = {}
    L = len(layer_dims)  # 网络层数

    for l in range(1, L):
        parameters['W' + str(l)] = np.random.randn(layer_dims[l], layer_dims[l - 1]) * 0.01
        parameters['b' + str(l)] = np.zeros((layer_dims[l], 1))

    return parameters

# 前向传播
def forward_propagation(X, parameters):
    caches = []
    A = X
    L = len(parameters) // 2  # 网络层数

    for l in range(1, L):
        Z = np.dot(parameters['W' + str(l)], A) + parameters['b' + str(l)]
        A = sigmoid(Z)
        caches.append((Z, A))

    Z = np.dot(parameters['W' + str(L)], A) + parameters['b' + str(L)]
    AL = sigmoid(Z)
    caches.append((Z, AL))

    return AL, caches

# 示例数据
X = np.random.randn(3, 10)  # 3个特征,10个样本
layer_dims = [3, 4, 5, 1]  # 输入层维度、各隐藏层维度、输出层维度
parameters = initialize_parameters(layer_dims)

# 前向传播
AL, caches = forward_propagation(X, parameters)

# 打印预测值
print("预测值:", AL)
相关推荐
To_OC6 小时前
大模型蒸馏是啥?说白了就是大厨带徒弟的学问
人工智能·llm·agent
新手来了@click6 小时前
JAVA+AI 简化开发操作|文章被 AI Agent 技术社区收录分享
人工智能
GuWenyue7 小时前
Cursor黑盒拆解!1套LangChain.js手写Mini编程Agent,自动生成React项目,效率提升60%
前端·数据库·人工智能
GuWenyue7 小时前
传统Agent工具两大痛点!300行代码落地MCP跨语言工具,彻底解耦LLM与工具
前端·人工智能·算法
老云讲算力市场7 小时前
WAIC首日观察:国产算力与机器人加速落地,奇点算力迎来产业新机遇
人工智能·科技
糖果店的幽灵7 小时前
【DeepAgents 从入门到精通】Context Management 上下文管理
java·人工智能·后端·spring·中间件·langgraph·deepagents
小林ixn7 小时前
大模型随机说话的秘密:Temperature 和 Top K 深度解析,LangChain 实战调优
人工智能·langchain
ALINX技术博客8 小时前
ALINX 亮相 2026 WAIC 世界人工智能大会,展示 AI 视觉 FPGA+GPU 异构计算与电子后视镜解决方案
人工智能·ai·fpga·世界人工智能大会·电子后视镜
程序员老猫8 小时前
当 AI 能写 80% 的代码时,后端工程师的核心价值还剩什么?
人工智能
想会飞的蒲公英8 小时前
计算机怎样读取中文文本:编码、清洗与标准化
人工智能·python·自然语言处理