第3章 运用感知机

本章将会探索最流行也是最基础的神经网络架构之一——感知机。本章也会介绍它们的扩展版本(也被称为多层感知机),以及它们的特性、学习算法和参数。同时,读者将会学习如何用Java来实现和使用它们以解决一些基本的问题。

  • 感知机
    • 应用和局限
  • 多层感知机
    • 分类
    • 回归
  • 反向传播算法
  • Java实现
  • 实际问题

感知机是最简单的神经网络。1957年由Frank Rosenblatt提出,它仅有一层神经元,接收一系列输入并产生一系列输出。这是最早获得关注的神经网络形式之一,特别是它的简洁性。一个简单的神经元的结构如图3-1所示。

..\17-0118 改图\0301.tif

图3-1

然而,科学家没多久就得出结论,感知机神经网络由于其结构简单只能处理简单的分类任务,通常在面对更加复杂的数据集时一筹莫展。让我们来回顾下第2章的第一个例子(AND指的是“逻辑与”),来更好地理解这个问题。

这个例子包含了一个与(AND)函数,它接收两个输入x1和x2。这个函数可以用一个二维图表来描绘,如图3-2所示。

..\17-0118 图\0302.png

图3-2

现在,我们来看看神经网络如何使用感知机规则在训练过程中不断进化的。如表3-1所示,一个权值对:w1和w2,初始化为0.5,偏置为0.5。假设学习率 ...

Get 神经网络算法与Java编程 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.