本文主要内容包括: (1) 介绍神经网络基本原理,(2) AForge.NET 实现前向
神经网络的方法,(3) Matlab 实现前向神经网络的方法 。
第 0 节、引例
本文以 Fisher 的 Iris 数据集作为神经网络程序的测试数据集。Iris 数据集
可以在 http://en.wikipedia.org/wiki/Iris_flower_data_set 找到。这里我
简要介绍一下 Iris 数据集:
有一批 Iris 花,已知这批 Iris 花可分为 3 个品种,现需要对其进行分类。已知
不同品种的 Iris 花的花萼长度、花萼宽度、花瓣长度、花瓣宽度会有差异。而
且我们还有一批已知品种的 Iris 花的花萼长度、花萼宽度、花瓣长度、花瓣宽
度的数据。
一种解决方法是用已有的数据训练一个神经网络,用作分类器。这也是本文
要实现的目的。
如果你只想用 C#或 Matlab 快速实现神经网络来解决你手头上的问题,或
者已经了解神经网络基本原理,请直接跳到第二节——神经网络实现。
如果你对神经网络基本原理还不清楚,我建议你还是从第一节开始阅读。
第一节、神经网络基本原理
1. 人工神经元( Artificial Neuron )模型
人工神经元是神经网络的基本元素,其原理可以用下图表示:
图 1. 人工神经元模型