深度学习与神经网络:单层感知机

今天这个文章让我们一起来学习下感知机:

一个传统的单层感知机如上图所示,其实理解起来很简单,我们可以直接理解为输入节点接受信号之后直接传输到输出节点,然后得到结果y.

就和上图一样,我们给出了权向量W=[W1,W2,W3]=[0.3,0.3,0.3],这时候我们输入[X1,X2,X3],并且于输出节点的t相结合,这样就可以得到方程式:

y = 0.3X1+0.3X2+0.3X3+0.4

在我们给定训练数据集之后,第一次给定的权值基本不会是适合的,因此我们需要使用给定的训练数据集进行迭代学习,规则如下:

给定的测试样例为(X,Y),而如今现在的模型输出为y,此时我们要对权值进行调整:

而这里边的η被称为学习率,这个学习率∈(0,1),并且很大程度上这个学习率是根据我们的经验得到的.如果我们选择的学习率过大,容易造成权值计算的不稳定.如果选择的学习率太小,不能够充分体现出对于权值的修正,迭代次数太多.就跟我们显微镜对焦一样,左调调,右调调就会看的越来越清楚.

从上边的式子来看,如果输出的实际值y和训练集中的Y一致,则Wi就不会发生变化,从而感知机就不会发生变化,否则感知机就会根据错误的大小进行权值的处理.

所以从上述来看,本质上感知机只能够对输出层进行处理,学习能力是很有限的,泛化能力很差.我们不妨分析下:对于与,或,非这样的问题,如图所示:

是可以形成一个线性超平面,从而进行分类划分.

如果是异或这样的问题,是无法形成一个线性超平面进行划分的.

在这里我们总结一下单层感知器的局限:

1:单层感知器没有泛化的能力

2:结构简单,激活函数只能是符号函数

3:只对于线性可分问题进行收敛,如果非线性可分问题,不会产生超平面,无法收敛.

4:如果存在离群点,则需要花费太多的训练时间.

下面我们用MATLAB来实际操作搭建一个单层感知器:

首先我们在MATLAB中输入P,T,p,t,P和T是训练集和训练集结果,p,t则是模型的参数,这里我们在nevp()中使用hardlims,这个参数是单层感知机的激活函数名称.

训练后我们输入测试集:

因此我们输入之后,可以得到一个正确的结果.

而MATLAB中也有一个nntool,可以使用图形化界面进行操作:

我们在命令行输入nntool.

注意选择上边的参数.

选择好输入的数据集

进行训练,训练后输入测试集:

输入结果,是-1,跟之前我们的测试集是一致的.

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏机器学习算法工程师

你知道词袋模型吗?

词袋模型是一种在使用机器学习算法建模文本时表示文本数据的方式; 易于理解和实现,并且在语言建模和文档分类等问题上取得了巨大成功。

15030
来自专栏奇点大数据

Pytorch神器(6)

作者介绍:高扬,奇点大数据创始人。技术畅销书《白话大数据与机器学习》、《白话深度学习与Tensorflow》、《数据科学家养成手册》著书人。重庆工商大学研究生导...

21230
来自专栏量化投资与机器学习

【Python机器学习】系列之从线性回归到逻辑回归篇(深度详细附源码)

第1章 机器学习基础 将机器学习定义成一种通过学习经验改善工作效果的程序研究与设计过程。其他章节都以这个定义为基础,后面每一章里介绍的机器学习模型都是按照这个...

624100
来自专栏机器之心

教程 | 如何判断LSTM模型中的过拟合与欠拟合

选自MachineLearningMastery 作者:Jason Brownlee 机器之心编译 参与:Nurhachu Null、路雪 判断长短期记忆模型在...

1.7K100
来自专栏技术沉淀

KNN算法实现及其交叉验证

简单的理解,我有一组数据,比如每个数据都是n维向量,那么我们可以在n维空间表示这个数据,这些数据都有对应的标签值,也就是我们感兴趣的预测变量。那么当我们接到一个...

39930
来自专栏自学笔记

Hidden Markov ModelHMM隐马尔科夫模型

等等,这种序列叫可见状态序列,但在HMM里面,还存在一个隐含状态链,比如这个状态链可能是

32720
来自专栏技术与生活

从一条曲线谈损失函数优化方法

找到生成最小值的一组参数的算法被称为优化算法。我们发现随着算法复杂度的增加,则算法倾向于更高效地逼近最小值。我们将在这篇文章中讨论以下算法:

16120
来自专栏奇点大数据

Pytorch神器(5)

大家好,今天我们进一步学习Pytorch的用法之正向传播(FeedForward)网络的用法。

16530
来自专栏ATYUN订阅号

【学术】在Google Sheet中创建深度神经网络

深度卷积神经网络并不像听起来的那样令人生畏。我将向你们展示我在Google Sheet中做的一个实现。复制它,你可以尝试一下,看看不同的因素如何影响模型的预测。...

31560
来自专栏智能算法

深度学习三人行(第3期)---- TensorFlow从DNN入手

22120

扫码关注云+社区

领取腾讯云代金券