Tensorflow系列专题(四):神经网络篇之前馈神经网络综述

本文从神经网络前言开始,介绍了感知器模型、多层神经网络及其激活函数,如Logistic、Tanh和ReLU。接着讨论了损失函数(均方误差和交叉熵)和输出单元(线性、Sigmoid、Softmax),并强调了非线性激活函数在解决复杂问题中的重要性。最后,预告了将使用TensorFlow实现多层神经网络解决mnist手写数字识别。
摘要由CSDN通过智能技术生成

目录:

  • 神经网络前言
  • 神经网络
    • 感知机模型
    • 多层神经网络
  • 激活函数
    • Logistic函数
    • Tanh函数
    • ReLu函数
  • 损失函数和输出单元
    • 损失函数的选择
      • 均方误差损失函数
      • 交叉熵损失函数
      • 输出单元的选择
    • 线性单元
      • Sigmoid单元
      • Softmax单元
  • 参考文献
 

 

 

 

 

一.神经网络前言

从本章起,我们将正式开始介绍神经网络模型,以及学习如何使用TensorFlow实现深度学习算法。人工神经网络(简称神经网络)在一定程度上受到了生物学的启发,期望通过一定的拓扑结构来模拟生物的神经系统,是一种主要的连接主义模型(人工智能三大主义:符号主义、连接主义和行为主义)。本章我们将从最简单的神经网络模型感知器模型开始介绍,首先了解一下感知器模型(单层神经网络)能够解决什么样的问题,以及它所存在的局限性。为了克服单层神经网络的局限性,我们必须拓展到多层神经网络,围绕多层神经网络我们会进一步介绍激活函数以及反向传播算法等。本章的内容是深度学习的基础,对于理解后续章节的内容非常重要。

深度学习的概念是从人工神经网络的研究中发展而来的,早期的感知器模型只能解决简单的线性分类问题,后来发现通过增加网络的层数可以解决类似于“异或问题”的线性不可分问题,这种多层的神经网络又被称为多层感知器。对于多层感知器,我们使用BP算法进行模型的训练[1],但是我们发现BP算法有着收敛速度慢,以及容易陷入局部最优等缺点,导致BP算法无法很好的训练多层感知器。另外,当时使用的激活函数也存在着梯度消失的问题,这使得人工神经网络的发展几乎陷入了停滞状态。为了让多层神经网络能够训练,学者们探索了很多的改进方案,直到2006年Hinton等人基于深度置信网络(DBN)提出了非监督贪心逐层训练算法,才让这一问题的解决有了希望,而深度学习的浪潮也由此掀起。

本章内容主要包括五个部分,第一部分我们介绍一下神经网络的基本结构,从基本的感知器模型到多层的神经网络结构;第二部分介绍神经网络中常用的激活函数;第三部分介绍损失函数和输出单元的选择;第四部分介绍神经网络模型中的一个重要的基础知识——反向传播算法;最后我们使用TensorFlow搭建一个简单的多层神经网络,实现mnist手写数字的识别。

 

二.神经网络

  1. 感知机模型
感知器(Perceptron)是一种最简单的人工神经网络,也可以称之为单层神经网络,如图1所示。感知器是由Frank Rosenblatt在1957年提出来的,它的结构很简单,输入是一个实数值的向量,输出只有两个值:1或-1,是一种两类线性分类模型。
  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值