神经网络学习笔记与TensorFlow实现MLP

本文介绍了神经网络的基础知识,包括前馈神经网络、BP神经网络和激活函数如Softmax、ReLU等。重点讨论了多层感知机(MLP)的结构,并探讨了损失函数和优化算法的选择。最后,通过TensorFlow实现了MLP模型。

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

前馈神经网络

每一层的神经元只接受前一层神经元的输入,并且输出到下一层。

BP神经网络

一种按照误差逆向传播算法训练的多层前馈神经网络。BP即Back Propagation,就是常用的反向传播算法。

激活函数

激活函数是对输入做的一种非线性的转换。转换的结果输出,并当作下一个隐藏层的输入。激活函数又称为非线性映射函数,讲神经元的输入映射到输出。常用的激活函数包括:Sigmoid型函数、tanh(x)型函数、ReLU(修正线性单元)、Leaky ReLU、参数化ReLU、随机化ReLU和ELU(指数化线性单元)。

Softmax

通常被用在网络中的最后一层,用来进行最后的分类和归一化,Softmax 函数取任意实数向量作为输入,并将其压缩到数值在0到1之间,总和为1的向量。它的输出结果是每个类的概率,这些概率总和为1。

tanh

tanh

sigmoid

sigmod

ReLU

ReLU

Leaky ReLU

Leaky ReLU

损失函数

常用的有:L1损失(偏差的绝对值)、L2损失(均方差损失)和交叉熵损失。
分类任务的损失函数包括:交叉熵损失函数、合页损失函数、坡道损失函数、大间隔交叉熵损失函数、中心损失函数。
回归任务的损失函数包括:L1损失函数、L2损失函数、Tukey’s biweight损失函数。

优化算法

常用的网络模型优化算法包括:随机梯度下降法、基于动量的随机梯度下降法、Nesterov型动量随机下降法、Adagrad法、Adadelta法、RMSProp法、Adam法。

超参

神经网络主要超参数包括:输入图像像素、学习率、正则化参数、神经网络层数、批处理大小、卷积层参数(卷积核大小、卷积操作步长、卷积核个数)、汇合层参数(汇合核大小、汇合步长)、目标函数、优化算法、激活函数、学习周期等。

多层感知机(MLP)

  1. 多层感知机(MLP,Multilayer Perceptron)也叫人工神经网络(ANN,Artificial Neural Network),除了输入输出层,它中间可以有多个隐层,最简单的MLP只含一个隐层,即三层的结构。
  2. 多层感知机层与层之间是全连接的(全连接的意思就是:上一层的任何一个神经元与下一层的所有神经元都有连接)。

TensorFlow实现MLP

import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data
import os

os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'  # 屏蔽警告日志

mnist = input_data.read_data_sets('MNIST_data', one_hot=True)  # 手写数字数据集
x_train, y_train = mnist.train.images, mnist.train.labels
x_test, y_test = mnist.test.images, mnist.test.labels
n_input, n_hidden, n_output = 784, <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值