-
* 感知器学习算法过程 1. 令D={(x,y)|i = 1,2,3,..N是训练样例集合; 2. 用随机值初始化权值向量W^((0)); 3. Repeat 1. For 每个勋两样例(xi, yi) 属于 D do 1. 计算预测输出yi^(k) 2. For 每个权值 Wj do 1. 更新权值Wj^(k + 1) = Wj^(k) + r(yi -yi^(k))xij 3. End for 2. End for 4. Until 满足条件 * 感知器(Perceptron)的缺陷 对于线性可分的分类问题,感知器学习算法保证收敛到一个最优解(只要学习率足够小)。如果问题不是线性可分的,那么算法就不会收敛。 * ANN人工神经网络的设计问题 在训练神经网络来学习分类任务之前,应该考虑以下设计问题。 1.确定输入层的结点数目。每一个数值输入变量或二元输入变量对应一个输入结点。如果输入变量是分类变量,则可以为每一个分类值创建一个结点。也可以使用[log2K]个结点对K元变量进行编码。 2.确定输出层的结点数目。对于二-类问题,一个输出结点足以。对于K-类问题,需要K个输出结点。 3.选择网络拓扑结构(例如隐藏层和隐藏结点数,前馈还是递归网络结构)。注意,目标函数表示取决于链上的权值、隐藏结点数和隐藏层数,结点的偏置以及激活函数的类型。找出适合拓扑结构不是件容易的事。一种方法是,开始的时候使用一个足够多的结点和隐藏层的全连接网络,然后使用较少的结点重复该模型过程。这种方法非常耗时。另一个方法是,不重复建过程,而是删除一些结点,然后重复模型评价过程来选择合适的模型复杂度。 4.初始化权值和偏置。* 感知器学习算法过程 1. 令D={(x,y)|i = 1,2,3,..N