ADALINE模型即自适应线性单元(Adaptive Linear Neuron),主要用于信号处理中的自适应滤波、预测和模式识别。其结构图如下

输入向量X=(x0,x1,x2,...,xn)T每个输入分量可以使数字量或模拟量;权向量W=(w0,w1,w2,...,wn)T该模型有两种输出

(1)当变换函数为线性函数时,输出模拟量,可以作为调节误差的手段,其功能是将期望输出与实际输出相比较,得到一个模拟量的误差信号,以此来调节权值,以保证任何时候始终保持期望输出与实际输出相等(y=d)

y=f(WTX)=WTX

(2)当变换函数为符号函数时,输出为双极性数字量,可以用来线性分类

y=f(WTX)=sgn(WTX)

ADALINE模型采用LMS即最小二乘法作为学习规则:

由LMS规则有 ΔW=η*(d-WTX)X

当输出为模拟量时,采用单位线性函数作变换函数,故y=WTX

所以,期望输出与实际输出的误差为ε=d-y

由此权向量调整公式可改为 ΔW=η*(d-y)X=η*ε*X,将输入向量X除以其模的平方有

ΔW=η*ε*X/||X||2

下面以两输入模拟输出的ADALINE型为例:

设输入向量X=(-1,1.2,2.7)T,d=2.3,初始权值为随机数W(0)=(-1,0.5,1.1)T,η=0.6,则,

y(0)=W(0)TX=(-1,0.5,1.1)T(-1,1.2,2.7)=4.57

ε(0)=d-y(0)=2.3-4.57=-2.27

第一次调整权值计算:

ΔW(0)=η*ε(0)*X/||X||2=0.6*(-2.27)*(-1,1.2,2.7)T/(-1,1.2,2.7)(-1,1.2,2.7)T=(0.14,-0.168,-0.378)T

W(1)=W(0)+ΔW(0)=(-1,0.5,1.1)T+(0.14,-0.168,-0.378)T=(-0.86,0.332,0.722)T

y(1)=W(1)TX=(-0.86,0.332,0.722)T(-1,1.2,2.7)=3.21

ε(1)=d-y(1)=2.3-3.21=-0.91

第二次调整权值计算:

ΔW(1)=η*ε(1)*X/||X||2=0.6*(-0.91)*(-1,1.2,2.7)T/(-1,1.2,2.7)(-1,1.2,2.7)T=(0.056,-0.0672,-0.151)T

W(2)=W(1)+ΔW(1)=(-0.86,0.332,0.722)T+(0.056,-0.0672,-0.151)T=(-0.804,0.265,0.571)T

重复上面的步骤直至实际输出逼近d即可。

ADALINE模型 主要用于语音识别、心电图诊断、信号处理以及系统辨识等方面

ADALINE模型的更多相关文章

  1. ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库

    在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...

  2. ASP.NET Core MVC/WebAPi 模型绑定探索

    前言 相信一直关注我的园友都知道,我写的博文都没有特别枯燥理论性的东西,主要是当每开启一门新的技术之旅时,刚开始就直接去看底层实现原理,第一会感觉索然无味,第二也不明白到底为何要这样做,所以只有当你用 ...

  3. ASP.NET路由模型解析

    大家好,我又来吹牛逼了 ~-_-~ 转载请注明出处:来自吹牛逼之<ASP.NET路由模型解析> 背景:很多人知道Asp.Net中路由怎么用的,却不知道路由模型内部的运行原理,今天我就给大家 ...

  4. 高性能IO模型浅析

    高性能IO模型浅析 服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking  ...

  5. 探索ASP.NET MVC5系列之~~~4.模型篇---包含模型常用特性和过度提交防御

    其实任何资料里面的任何知识点都无所谓,都是不重要的,重要的是学习方法,自行摸索的过程(不妥之处欢迎指正) 汇总:http://www.cnblogs.com/dunitian/p/4822808.ht ...

  6. 隐马尔科夫模型python实现简单拼音输入法

    在网上看到一篇关于隐马尔科夫模型的介绍,觉得简直不能再神奇,又在网上找到大神的一篇关于如何用隐马尔可夫模型实现中文拼音输入的博客,无奈大神没给可以运行的代码,只能纯手动网上找到了结巴分词的词库,根据此 ...

  7. webapi - 模型验证

    本次要和大家分享的是webapi的模型验证,讲解的内容可能不单单是做验证,但都是围绕模型来说明的:首先来吐槽下,今天下午老板为自己买了套新办公家具,看起来挺好说明老板有钱,不好的是我们干技术的又成了搬 ...

  8. 谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型

    开本系列,讨论一些有趣的 CSS 题目,抛开实用性而言,一些题目为了拓宽一下解决问题的思路,此外,涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题中有你感觉 ...

  9. 【NLP】蓦然回首:谈谈学习模型的评估系列文章(一)

    统计角度窥视模型概念 作者:白宁超 2016年7月18日17:18:43 摘要:写本文的初衷源于基于HMM模型序列标注的一个实验,实验完成之后,迫切想知道采用的序列标注模型的好坏,有哪些指标可以度量. ...

随机推荐

  1. Pyhton 学习笔记1

    格式化 最后一个常见的问题是如何输出格式化的字符串.我们经常会输出类似'亲爱的xxx你好!你xx月的话费是xx,余额是xx'之类的字符串,而xxx的内容都是根据变量变化的,所以,需要一种简便的格式化字 ...

  2. css预处理器之一---sass(一)

    慕课学习笔记: CSS 预处理器定义了一种新的语言,其基本思想是,用一种专门的编程语言,为 CSS 增加了一些编程的特性,将 CSS 作为目标生成文件,然后开发者就只要使用这种语言进行编码工作. 通俗 ...

  3. Maven setting.xml 文件剖析

    全局配置: ${M2_HOME}/conf/settings.xml (配置环境变量  新建 M2_HOME    安装目录到版本名那里(D:\apache-maven-3.0.2) 编辑path 环 ...

  4. JUnit 3.8.1 源码学习

    JUnit 3.8.1 源码学习 环境搭建(源码加载配置) 由于IDE自身含有JUint插件,因此通过正常途径是没有源码加载入口的,因此需通过手动加载扩展JAR,然后再添加对应源码JAR,如图:项目右 ...

  5. css预处理器less和scss之less介绍(一)

    第一次发的标题有误,重发一遍,抱歉了 一.less基础语法 1.声明变量:@变量名:变量值 使用变量:@变量名 例如 @color : #ff0000; @length : 100px; #div1{ ...

  6. 【Beta阶段】第二次scrum meeting

    Coding/OSChina 地址 1. 会议内容 学号 主要负责的方向 昨日任务 昨日任务完成进度 接下去要做 99 PM 会议总结,博客编写,代码整理 100% 准备下一次会议内容,并对已完成的代 ...

  7. 团队作业8——第二次项目冲刺(Beta阶段)Day1--5.18

    1.展开站立式会议: 会议内容:①团队里的新成员做简单的自我介绍. ②讨论每天的任务分配问题. ③提出一个严格要求:博客一定要及时发布,并及时提交作业,遇到困难可以提出来一起解决. ④就现阶段的项目进 ...

  8. 201521123103 《Java学习笔记》 第五次学习总结

    一.本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 1.2 可选:使用常规方法总结其他上课内容. (1).接口更灵活.更方便,可以方便的为现有的系统添加新的功能. (2).is-a ...

  9. 201521123106《java程序设计》第四周学习总结

    1. 本周学习总结 2. 书面作业 1.注释的应用使用类的注释与方法的注释为前面编写的类与方法进行注释,并在Eclipse中查看.(截图) 面向对象设计(大作业1-非常重要)2.1 讲故事:将在网上商 ...

  10. 201521123013 《Java程序设计》第3周学习总结

    1. 本章学习总结 2. 书面作业 Q1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; ...