神经网络学习之----单层感知器_weixin_30752699的博客-程序员秘密

技术标签: 人工智能  

神经元:通常是由一个神经细胞都有树突、轴突、细胞核等等。树突可以接受其他神经元传来的信号,然后对这些信号进行一下处理传递给下一个神经元。

单层感知器:1958年,美国心理学家Frank Rosenblatt 提出一种具有单层计算单元的神经网络,成为Perceptron,即感知器。单层感知器即只有一层处理单元的感知器,如果包括输入层在内,应为两层。

 

其中x1、x2,x3属于输入层,w1,w2,w3分别数x的权值,b代表了偏置。当外部信号X通过神经传递到神经元经过神经元进行处理,就相当于x1*w1+x2*w2+x3*w3+b。当神经元处理过后对外部进行输入,在输出的过程中经过了一个激活函数f,单层感知器的激活函数就是sign(x),最后形成了输出y。其作用就是处理简单的函数,进行分类处理。

 

单层感知器举例:

 

把偏置当做特殊权值:添加x0为输入,w0作为x0的权值,结果就相当于把x1*w1+x2*w2+x3*w3+b改成了x0*w0+x1*w1+x2*w2+x3*w3

 

感知器学习规则:大1958年,美国学者Frank Rosenblatt首次定义了一个具有单层计算单元的神经网络结构,称为Perceptron(感知器)。感知器的学习规则规定,学习信号等于神经元期望输出(教师信号)与实际输出之差:

  

式中,dj为期望的输出,oj = f (WjT X)。感知器采用了符号函数作为转移函数,其表达为:

  

因此,权值调整公式应为:

  

式中,当实际输出与期望值相同时,权值不需要调整;在有误差存在的情况下,由于dj和sgn(WjT X)属于{-1,1},权值调整公式可简化为:

  

感知器学习规则只适用于二进制神经元,初始权值可取任意值。

感知器学习规则代表一种有导师学习,由于感知器理论是研究其他神经网络的基础,该规则对于神经网络的有导师学习具有极为重要的意义。

学习率(Learning rate):作为监督学习以及深度学习中重要的超参,其决定着目标函数能否收敛到局部最小值以及何时收敛到最小值。合适的学习率能够使目标函数在合适的时间内收敛到局部最小值。

  

收敛条件:

   误差小于某个预先设定的较小的值。

   两次迭代之间的权值变化已经很小。

  设定最大迭代次数,当迭代超过最大次数就停止。

 

转载于:https://www.cnblogs.com/mengqimoli/p/10348584.html

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_30752699/article/details/97208402

智能推荐

安装XAMPP后测试PHP是否安装成功时报错的解决方案_xamapp安装的php -v 命令报错_Jarven-z的博客-程序员秘密

第一步:找到XAMPP目录下的php文件,复制目录(比如我的是D:\XAMPP\php)。第二步:依次打开此电脑——属性——高级系统设置——环境变量——系统变量——path,在变量值最后面粘贴刚刚复制的地址,注意分号哦~第三步:win+R输入cmd打开命令提示符,在其中输入php -v,回车,看到php版本信息,ok,问题解决。综上:就是需要手动添加一下环境变量~...

zmq基础_zmq eintr_Mr_Cheung1005的博客-程序员秘密

<link rel="stylesheet" href="https://csdnimg.cn/release/phoenix/template/css/ck_htmledit_views-e4c7a3727d.css"> <div class="htmledit_views"># ZMQ 第一章 ZeroM...

腾讯地图JavaScript API GL实现文本标记的碰撞避让_腾讯位置服务的博客-程序员秘密

以下内容转载自Crape的文章《web页面上的旋转矩形碰撞》作者:Crape链接:https://juejin.im/post/5eede991e51d45740950c946来源:掘金著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。前言本文主要是总结一下web页面中的旋转矩形的碰撞检测,碰撞算法本身并不难,只是需要注意web坐标系在计算中的影响。碰撞检测应该是在游戏等场景中很常见且基础的功能,本文记录了在JavaScript API GL遇到了这类碰撞问题的调研和实现的.

testlink搜索报错:DB Access Error - debug_print_backtrace() OUTPUT START_fabbymee的博客-程序员秘密

==============================================================================DB Access Error - debug_print_backtrace() OUTPUT STARTATTENTION: Enabling more debug info will produce path disclosure...

Vorlon.js简介:如何使用它来远程调试Javascript_dingshi7798的博客-程序员秘密

这篇文章是从微软Web开发技术系列的一部分。 感谢您支持谁使SitePoint可能的合作伙伴。 最近在// BUILD / 2015年我们宣布vorlon.js -一个开源的,用于远程调试和测试你的JavaScript扩展,平台无关的工具。 我有机会创造一些有才华的工程师和技术传道士的帮助下在微软vorlon.js(即给你带来了同样的家伙http://www.babylonjs.com/ )。...

python-6. 重建二叉树_class binarytree(binarytreenode):def __init__(self__Xiaobo的博客-程序员秘密

题目描述:输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树,假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如,输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4, 7, 2, 1, 5, 3, 8, 6},则重建如下图所示的二叉树并输出它的头结点。二叉树节点的定义如下:struct BinaryTreeNode{ int m_nValue...

随便推点

svn下载和安装及eclipse中svn插件的安装配置_supertianjia的博客-程序员秘密

1.首先下载安装svn的服务端      一路下一步即可安装完成后是这个样子,下面就是把本地一个项目上传到svn服务端,右击Repositories -->Creat new Repositorie 下一步 起个名字 下面这个指定某些人有相应更改代码的权限还是所有人,一般都是选择Customize permi...

AppImage 使用技巧_taodanc的博客-程序员秘密

AppImage 使用技巧 解压已有的AppImage文件建立系统启动图标重新打包测试环境:deepin15.11背景:现在很多LINUX软件打包成 .AppImage 进行发布. 但是有时候, 这个AppImage文件还是不能很好的运行或者虽然可以直接运行 AppImage 文件, 但是不能通过点击图标启动,不是很方便 这就需要将 AppImage 解压到固定的路径, 并增加系统启动图标。于是就需要解压AppImage文件替换库文件或修改图标或者图形快捷方式等, 再进行重新打包运行.解压已有的Ap

vue + element-ui 的级联选择器 el-cascader 样式不显示_解忧swag的博客-程序员秘密

使用vue + element-ui 的级联选择器 el-cascader 样式没有生效如下图解决方案:在main.js导入import 'element-ui/lib/theme-chalk/index.css'保存后重启(webpack保存自动发布)问题解决

JS+CSS+HTML 前端开发(三)_weixin_30244681的博客-程序员秘密

总结前两个阶段,基本属于从杂乱无序中寻找有序世界的过程,在哲学意义上基本算是人类社会从混沌时代向使用工具时代的挺进。如果说编程是辛苦的事情,那么是因为我们一直在重复,而没有去创造,如果你一直在不停地书写代码,没有去总结问题,寻找简化开发的工具甚至模式,那么我们永远不能上升到哲学高度。如果一件事情没有哲学意义,那么就永远没有存在甚至发展的必要了。有人说,编程是一门艺术,基本说这话的人没有几个国内人士...

BZOJ 3122([Sdoi2013]随机数生成器-同余方程+负数逆元)_nike0good的博客-程序员秘密

3122: [Sdoi2013]随机数生成器Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 258  Solved: 130[Submit][Status]DescriptionInput输入含有多组数据,第一行一个正整数T,表示这个测试点内的数据组数。   接下来T行,每行有五个整数p,a,b,X1,

android 获取手机上面的IMSI序列号,IMEI,MAC地址,IP地址,当前时间,当前经纬度,获取网络类型_刘永祥的博客-程序员秘密

// 获取IMSI public void getIMSI(Context context) { TelephonyManager telManager = (TelephonyManager) context .getSystemService(Context.TELEPHONY_SERVICE); String imsi =

推荐文章

热门文章

相关标签