人工神经网络作业-单层感知器

人工神经网络作业-单层感知器
人工神经网络作业-单层感知器

3.5单层感知器

# include

# include

# define N 100

int sgn(double x) //符号运算函数

{

int y;

if(x>0||x==0)

y=1;

else

y=-1;

return y;

}

void main()

{

double W[4]={0.0,0.0,0.0,0.0},X[6][4]={{-1,0.8,0.5,0},{-1,0.9,0.7,0.3},{-1,1,0.8,0.5}, {-1,0,0.2,0.3},{-1,0.2,0.1,1.3},{-1,0.2,0.7,0.8}};

int err,o[6],i,j,k,num,d[6]={1,1,1,-1,-1,-1};

double n,WX;

n=1.0;

k=0;

do {

k++;

num=0;

for(i=0;i<6;i++)

{

WX=0.0;

for(j=0;j<4;j++)

WX=WX+W[j]*X[i][j];

o[i]=sgn(WX);

err=d[i]-o[i];

for(j=0;j<4;j++)

W[j]=W[j]+n*err*X[i][j];

if(err==0)

num++;

}

}while(num!=6);

printf("调整后的权值矩阵为:\n");

for(j=0;j<4;j++)

printf("%f\n",W[j]);

printf("分类结果为:\n");

for(i=0;i<6;i++)

printf("%d\n",o[i]);

}

3.6单次训练的结果

# include

# include

double Sig(double x) //单极性函数

{

double y;

y=1.0/(1.0+exp(-x));

return y;

}

void main()

{

double

x[3]={-1,1,3},V[3][3]={{0,3,-1},{0,1,2},{0,-2,0}},W[3][3]={{0,2,3},{0,1,1},{0,0,-2}};

double d[3]={0,0.95,0.05},nety[3],neto[3],Y[3],O[3],dety[3],deto[3];

double D,yita;

int i,j;

yita=1.0;

FILE *fp;

fp=fopen("out.txt","w");

fprintf(fp,"初始W矩阵:\n");

for(i=0;i<3;i++)

{

for(j=1;j<3;j++)

fprintf(fp,"%f ",W[i][j]);

fprintf(fp,"\n");

}

fprintf(fp,"初始V矩阵:\n");

for(i=0;i<3;i++)

{

for(j=1;j<3;j++)

fprintf(fp,"%f ",V[i][j]);

fprintf(fp,"\n");

}

//计算隐层的输出

fprintf(fp,"隐层的净输入:\n");

for(j=1;j<3;j++)

{

nety[j]=0.0;

for(i=0;i<3;i++)

nety[j]=nety[j]+V[i][j]*x[i];

fprintf(fp,"%f\t",nety[j]);

}

fprintf(fp,"\n");

Y[0]=-1.0;

fprintf(fp,"隐层的输出:\n");

for(i=1;i<3;i++)

Y[i]=Sig(nety[i]);

for(j=1;j<3;j++)

fprintf(fp,"%f\t",Y[j]);

fprintf(fp,"\n");

//计算输出层的输出

fprintf(fp,"输出层的净输入:\n");

for(j=1;j<3;j++)

{

neto[j]=0.0;

for(i=0;i<3;i++)

neto[j]=neto[j]+W[i][j]*Y[i];

fprintf(fp,"%f\t",neto[j]);

}

fprintf(fp,"\n");

fprintf(fp,"输出层的输出:\n");

for(i=1;i<3;i++)

O[i]=Sig(neto[i]);

for(j=1;j<3;j++)

fprintf(fp,"%f\t",O[j]);

fprintf(fp,"\n");

//计算导数

fprintf(fp,"隐层输出的一阶导数:\n");

for(i=1;i<3;i++)

fprintf(fp,"%f\t",Sig(nety[i])*(1.0-Sig(nety[i])));

fprintf(fp,"\n");

fprintf(fp,"输出层输出的一阶导数:\n");

for(i=1;i<3;i++)

fprintf(fp,"%f\t",Sig(neto[i])*(1.0-Sig(neto[i])));

//计算输出层误差

fprintf(fp,"\n输出层误差:\n");

for(i=1;i<3;i++)

{

deto[i]=(d[i]-O[i])*O[i]*(1.0-O[i]);

fprintf(fp,"%f\t",deto[i]);

}

fprintf(fp,"\n隐层误差:\n");

//计算隐层误差

for(i=1;i<3;i++)

{

D=0.0;

for(j=1;j<3;j++)

D=D+deto[j]*W[i][j];

dety[i]=D*Y[i]*(1.0-Y[i]);

fprintf(fp,"%f\t",dety[i]);

}

fprintf(fp,"\n");

//调整W矩阵

for(i=1;i<3;i++)

{

for(j=0;j<3;j++)

W[j][i]=W[j][i]+yita*deto[i]*Y[j];

}

//调整V矩阵

for(i=1;i<3;i++)

{

for(j=0;j<3;j++)

V[j][i]=V[j][i]+yita*dety[i]*x[j];

}

//输出调整一次后的权值矩阵

fprintf(fp,"调整一次后的W矩阵:\n");

for(i=0;i<3;i++)

{

for(j=1;j<3;j++)

fprintf(fp,"%f ",W[i][j]);

fprintf(fp,"\n");

}

fprintf(fp,"调整一次后的V矩阵:\n");

for(i=0;i<3;i++)

{

for(j=1;j<3;j++)

fprintf(fp,"%f ",V[i][j]);

fprintf(fp,"\n");

}

本程序的输出为输出到文本文件中,结果如下:

初始W矩阵:

2.000000

3.000000

1.000000 1.000000

0.000000 -2.000000

初始V矩阵:

3.000000 -1.000000

1.000000

2.000000

-2.000000 0.000000

隐层的净输入:

-8.000000 3.000000

隐层的输出:

0.000335 0.952574

输出层的净输入:

-1.999665 -4.904813

输出层的输出:

0.119238 0.007356

隐层输出的一阶导数:

0.000335 0.045177

输出层输出的一阶导数:

0.105020 0.007302

输出层误差:

0.087247 0.000311

隐层误差:

0.000029 -0.000028

调整一次后的W矩阵:

1.912753

2.999689

1.000029 1.000000

0.083109 -1.999703

调整一次后的V矩阵:

2.999971 -0.999972

1.000029 1.999972

-1.999912 -0.000084

3.7 批训练BP算法

# include

#include

# include

# include

# define N 100

# define NUM 1e5 //循环最大次数

int IN,HN,ON; //IN为输入层节点数,HN为隐层节点数,ON为输出层节点数double Sig(double x) //单极性函数

double y;

y=1.0/(1.0+exp(-x));

return y;

}

double DSig(double x) //双极性函数

{

double y;

y=(1.0-exp(-x))/(1.0+exp(-x));

return y;

}

void main()

{

float x[N][N],V[N][N],W[N][N];

float d[N][N],nety[N],neto[N],Y[N],O[N][N],dety[N],deto[N];

float D,E,Ep,Emin;

float yita;

int i,j,k,choose,p,yb;//p用于计数,看样本是否输入完毕,choose用于选择单极性、双极性函数

k=0;

Emin=1e-5;

//输入各层节点数和学习率

printf("请输入输入层节点数IN=");

scanf("%d",&IN);

printf("请输入隐层节点数HN=");

scanf("%d",&HN);

printf("请输入输出层节点数ON=");

scanf("%d",&ON);

printf("请输入学习率yita=");

scanf("%f",&yita);

printf("请输入函数选择参数choose,1代表单极性,2代表双极性:");

scanf("%d",&choose);

printf("请输入样本总数yb=");

scanf("%d",&yb);

printf("输入样本(第一个为-1):\n");

for(j=0;j

for(i=0;i<=IN;i++)

scanf("%f",&x[j][i]);

printf("输入期望输出值(在期望值前加0):\n");

for(j=0;j

for(i=0;i<=ON;i++)

scanf("%f",&d[j][i]);

printf("\n");

//初始化权值矩阵,取-1到1的随机数

for(i=0;i<=IN;i++)

for(j=0;j<=HN;j++)

{

srand((unsigned)time(NULL));

V[i][j]=(double)((rand()/32767.0)*2-1);

}

for(i=0;i<=HN;i++)

for(j=0;j<=ON;j++)

{

srand((unsigned)time(NULL));

W[i][j]=(double)((rand()/32767.0)*2-1);

}

do

{

p=0;

E=0.0;

while(p

{

/**************************计算隐层的输出*****************************/ for(j=1;j<=HN;j++)

{

nety[j]=0.0;

for(i=0;i<=IN;i++)

nety[j]=nety[j]+V[i][j]*x[p][i];

}

Y[0]=-1.0;

for(i=1;i<=HN;i++)

{

if(choose==1)

Y[i]=Sig(nety[i]);

else if(choose==2)

Y[i]=DSig(nety[i]);

}

/*************************计算输出层的输出*****************************/ for(j=1;j<=ON;j++)

{

neto[j]=0.0;

for(i=0;i<=HN;i++)

neto[j]=neto[j]+W[i][j]*Y[i];

}

for(i=1;i<=ON;i++)

{

if(choose==1)

O[p][i]=Sig(neto[i]);

else if(choose==2)

O[p][i]=DSig(neto[i]);

}

/************************求样本的误差累计******************************/ for(i=1;i<=ON;i++)

E=E+(d[p][i]-O[p][i])*(d[p][i]-O[p][i]);

p++;

}

Ep=E/2.0;//sqrt(E);

/************************计算输出层误差********************************/ for(i=1;i<=ON;i++)

{

if(choose==1)

deto[i]=(d[p][i]-O[p][i])*O[p][i]*(1.0-O[p][i]);

else if(choose==2)

deto[i]=(d[p][i]-O[p][i])*0.5*(1.0-O[p][i]*O[p][i]);

}

/*************************计算隐层误差*********************************/ for(i=1;i<=HN;i++)

{

D=0.0;

for(j=1;j<=ON;j++)

D=D+deto[j]*W[i][j];

if(choose==1)

dety[i]=D*Y[i]*(1.0-Y[i]);

else if(choose==2)

dety[i]=D*0.5*(1.0-Y[i]*Y[i]);

}

/***************************调整输出层权值矩阵W*************************/ for(i=1;i<=ON;i++)

{

for(j=0;j<=HN;j++)

W[j][i]=W[j][i]+yita*deto[i]*Y[j];

}

/****************************调整隐层权值矩阵V**************************/ for(i=1;i<=HN;i++)

{

for(j=0;j<=IN;j++)

V[j][i]=V[j][i]+yita*dety[i]*x[p][j];

}

k++;

printf("%d\n",k);

if(k>NUM)

{

printf("到达最大循环次数");

break;

}

}while(Ep>Emin);

//输出结果,验证

for(p=0;p

{

for(i=1;i<=ON;i++)

printf("%f\t",O[p][i]);

printf("\n");

}

for(i=1;i<=ON;i++)

printf("%f\t",deto[i]);

printf("\n");

//输出误差

printf("%f\tEp=%f\n",E,Ep);

//输出调整后的权值矩阵

for(i=0;i<=HN;i++)

{

for(j=0;j<=ON;j++)

printf("%f ",W[i][j]);

printf("\n");

}

for(i=0;i<=IN;i++)

{

for(j=0;j<=HN;j++)

printf("%f ",V[i][j]);

printf("\n");

}

}

3.8 字符分类(标准BP算法):

# include

# include

#include

# include

# define N 100

# define NUM 1e6 //循环最大次数

int IN,HN,ON; //IN为输入层节点数,HN为隐层节点数,ON为输出层节点数

float Sig(float x) //双极性函数

{

float y;

y=(1.0-exp(-x))/(1.0+exp(-x));

return y;

}

void main()

{

float x[N][N]={{-1.0,1.0,1.0,1.0,1.0,1.0,0.0,0.0,1.0,1.0,1.0,1.0,1.0,1.0,0.0,0.0,1.0}

,{-1,0,1,0,0,0,1,0,0,0,1,0,0,0,1,0,0},{-1,1,1,1,1,1,0,0,1,1,0,0,1,1,1,1,1}},V[N][N],W[N][N];// float

d[N][N]={{0.0,1.0,-1.0,-1.0},{0.0,-1.0,1.0,-1.0},{0.0,-1.0,-1.0,1.0}},nety[N],neto[N],Y[N],O[N][ N],dety[N],deto[N];//

float D,E,Ep,Emin;

float yita;

int i,j,p,yb;//p用于计数,看样本是否输入完毕

long int k;

k=0;

Emin=0.001;

IN=16;

ON=3;

/******************输入隐层节点数和学习率***********************/

printf("请输入隐层节点数HN=");

scanf("%d",&HN);

printf("请输入学习率yita=");

scanf("%f",&yita);

printf("请输入样本总数yb=");

scanf("%d",&yb);

/**************初始化权值矩阵,取-1到1的随机数******************/

for(i=0;i<=IN;i++)

for(j=0;j<=HN;j++)

{

srand((unsigned)time(NULL));

V[i][j]=(double)((rand()/32767.0)*2-1);

}

for(i=0;i<=HN;i++)

for(j=0;j<=ON;j++)

{

srand((unsigned)time(NULL));

W[i][j]=(double)((rand()/32767.0)*2-1);

}

while(k

{

p=0;

k++;

while(p

{

E=0.0;

/**************************计算隐层的输出*****************************/ for(j=1;j<=HN;j++)

{

nety[j]=0.0;

for(i=0;i<=IN;i++)

nety[j]=nety[j]+V[i][j]*x[p][i];

}

Y[0]=-1.0;

for(i=1;i<=HN;i++)

Y[i]=Sig(nety[i]);

/*************************计算输出层的输出*****************************/ for(j=1;j<=ON;j++)

{

neto[j]=0.0;

for(i=0;i<=HN;i++)

neto[j]=neto[j]+W[i][j]*Y[i];

}

for(i=1;i<=ON;i++)

O[p][i]=Sig(neto[i]);

/************************求样本的误差累计******************************/ for(i=1;i<=ON;i++)

E=E+(d[p][i]-O[p][i])*(d[p][i]-O[p][i]);

Ep=sqrt(E);

/************************计算输出层误差********************************/ for(i=1;i<=ON;i++)

deto[i]=(d[p][i]-O[p][i])*0.5*(1.0-O[p][i]*O[p][i]);

/*************************计算隐层误差*********************************/ for(i=1;i<=HN;i++)

{

D=0.0;

for(j=1;j<=ON;j++)

D=D+deto[j]*W[i][j];

dety[i]=D*0.5*(1.0-Y[i]*Y[i]);

}

/***************************调整输出层权值矩阵W*************************/ for(i=1;i<=ON;i++)

{

for(j=0;j<=HN;j++)

W[j][i]=W[j][i]+yita*deto[i]*Y[j];

}

/****************************调整隐层权值矩阵V**************************/ for(i=1;i<=HN;i++)

{

for(j=0;j<=IN;j++)

V[j][i]=V[j][i]+yita*dety[i]*x[p][j];

}

// printf("%d\n",k);

p++;

}

if(Ep

break;

}

//输出结果,验证

printf("分类输出结果为:\n");

for(p=0;p

{

for(i=1;i<=ON;i++)

printf("%f\t",O[p][i]);

printf("\n");

}

//输出误差

printf("Ep=%f\n",E,Ep);

printf("运行次数:%d\n",k);

}

运行结果:《选取不同的隐节点,观察运行结果》隐节点为5时

隐节点为6时

隐节点为7时

隐节点为8时

隐节点为9时

隐节点为10时

隐节点为11时

隐节点为12时

隐节点为13时

3.11函数逼近

# include

# include

# include

#include

# define NUM 200

# define N 110

# define e 1e-10

# define pi 3.14159

double F(double x)

{

double y;

y=1.1*(1-x+2*x*x)*exp(-x*x/2);

return y;

}

double Sig(double x) //单极性函数{

double y;

y=1.0/(1.0+exp(-x));

return y;

}

double zaosh()

{

double y;

y=(double)(rand()/32767.0/10.0);

return y;

}

void main()

{

double x[N],o[N],y[N],d[N],dd[N];

int i,j,P,p,k=1,HN;

double w[N],v[N][N],Do,Dy[N],nety[N],neto,dnety[N],dneto;

double yita,E,Ez=0,t,Emin;

P=100;

FILE *fp;

fp=fopen("out.txt","w");

if(fopen==NULL)

{

printf("Error!");

exit(0);

}

for(i=1;i<=P;i++)

x[i]=-4.0+(i-1)*8.0/(P-1);

for(i=1;i<=P;i++)

{

srand((unsigned)time(NULL));

d[i]=F(x[i]);

dd[i]=d[i]+zaosh();

}

yita=1.0;

HN=80;

//printf("输入隐层节点数:\n");

// scanf("%d",&HN);

//初始化权值矩阵

for(j=1;j<=HN;j++)

{

v[0][j]=0;

v[1][j]=0;

}

for(j=0;j<=HN;j++)

{

w[j]=0;

}

y[0]=-1,x[0]=-1;

do

{

t=0;

Ez=0;

for(p=1;p<=P;p++)

{

E=0;

for(j=1;j<=HN;j++)

{

nety[j]=v[0][j]*x[0]+v[1][j]*x[p];

y[j]=Sig(nety[j]);

dnety[j]=y[j]*(1-y[j]);

}

neto=0;

for(j=0;j<=HN;j++)

{

neto=neto+w[j]*y[j];

}

o[p]=neto;

dneto=1;

E=dd[p]-o[p];

Ez=Ez+E;

t=t+E*E;

Do=(dd[p]-o[p])*dneto; //计算输出层误差

for(j=1;j<=HN;j++) //计算隐层误差

Dy[j]=Do*w[j]*dnety[j];

/*********调整权值矩阵w************/

for(j=0;j<=HN;j++)

w[j]=w[j]+yita*Do*y[j];

/*********调整权值矩阵v************/

for(j=1;j<=HN;j++)

{

v[0][j]=v[0][j]+yita*Dy[j]*x[0];

v[1][j]=v[1][j]+yita*Dy[j]*x[p];

}

}

Emin=sqrt(t);

Ez=Ez/P;

k++;

if(k>NUM)break;

}while(Ez>e||Emin>0.1);

printf("%d\n",k);

printf("%f\t%f\n",Ez,Emin);

for(p=1;p<=P;p++)

fprintf(fp,"%f\t%f\t%f\t%f\n",x[p],d[p],o[p],dd[p]);

}

结果如下图所示,B代表的是函数的真值,C代表的是网路计算值,D代表的是加噪声后的函数输出值:

Y A x i s T i t l e

X Axis Title

无线传感器网络路由协议

无线传感器网络的关键技术有路由协议、MAC协议、拓扑控制、定位技术等。路由协议: 数据包的传送需要通过多跳通信方式到达目的端,因此路由选择算法就是网络层设计的一个主要任务。路由协议主要负责将数据分组从源节点通过网络转发到目的节点,它主要包括两个方面的功能: 1、寻找源节点与目的节点间的优化路径。 2、将数据分组沿着优化路径正确转发。 无线传感器与传统的无线网络协议不同之处,它受到能量消耗的制约,并且只能获取到局部拓扑结构的信息,由于这两个原因,无线传感器的路由协议要能够在局部网络信息的基础上选择合适路径。传感器由于它很强的应用相关性,不同应用中的路由协议差别很大,没有通用的路由协议。无线路由器的路由协议应具备以下特点: (1)能量优先。需要考虑到节点的能量消耗以及网络能量均衡使用的问题。(2)基于局部拓扑信息。WSN为了节省通信能量,通常采用多跳的通信模式,因此节点如何在只能获取到局部拓扑信息与资源有限的情况下实现简单高效的路由机制,这就是WSN的一个基本问题。 (3)以数据为中心。传统路由协议通常以地址作为节点的标识与路由的依据,而WSN由于节点的随机分布,所关注的就是监测区域的感知数据,而不就是具体哪个节点获取的信息,要形成以数据为中心的消息转发路径。(4)应用相关。设计者需要针对每一个具体应用的需求,设计与之适应的特定路由机制。 现介绍几种常见的路由协议(平面路由协议、网络分层路由协议、地理定位辅助路由协议): 一、平面路由协议 平面路由协议中,逻辑结构时平面结构,节点间地位平等,通过局部操作与反馈信息来生成路由。当汇聚点向某些区域发送查询并等待来自于这些区域内传感器所采集的相关数据,其中的数据不能采用全局统一的ID,而就是要采用基于属性的命名机制进行描述。平面路由的优点就是结构简单、鲁棒性(即路由机制的容错能力)较好,缺点就是缺乏对通信资源的优化管理,对网络动态变化的反应速度较慢。其中典型的平面路由协议有以下几种: 1、1、洪泛式路由(Flooding): 这就是一种传统的网络通信路由协议。这种算法不要求维护网络的拓扑结构与相关路由的计算,仅要求接受到信息的节点以广播形式转发数据包。例如:S节点要传送一段数据给D节点,它需要通过网络将副本传送给它每一个邻居节点,一直到传送到节点D为止或者为该数据所设定的生存期限为零为止。优点在于:实现简单;不需要为保持网络拓扑信息与实现复杂路由发现算法消耗计算资源;适用于鲁棒性较高的场合。但同时也有相应的缺点:一个节点可能得到一个数据的多个副本;存在部分重叠,如果相邻节点同时对某件事作出反应,则两个节点的邻居节点将收到两份数据副本;盲目使用资源,无法作出自适应的路由选择。 为克服Flooding算法这些固有的缺陷,S、Hedetniemi等人提出闲聊式(Gossiping)策略。这种算法采用随机性原则,即节点发送数据时不再采用广播形式,而就是随机选取一个相邻节点转发它接收到的数据副本(避免了消息爆炸的结果)。

人工智能习题作业神经计算I习题答案

第五章 神经网络课后习题及答案 一、选择题: 1. 在BP算法中,设y=f(xi)为xi的平滑函数,想知道xi对y增大变化的情况, 我们可求 ,然后进行下列的哪一项? ( B ) A 取最小 B 取最大 C 取积分 D 取平均值 2. 对于反向传播学习,无论是在识别单个概念的学习或识别两个概念的学习中,都涉及到下列的哪一个操作? ( A ) A 权值的修正 B 调整语义结构 C 调整阀值 D 重构人工神经元 3. 根据Hopfield网络学习的特点,能实现联想记忆和执行线性和非线性规划等求解问题其应用没有涉及到下列的哪一个内容? ( D ) A 模糊推理模型 B 非线性辨认 C 自适应控制模型 D 图象识别 4. 对于神经网络的二级推理产生式规则由三个层次构成,它不含下列的哪一个层次? ( C ) A 输入层 B 输出层 C 中间层 D 隐层 5. 人工神经网络借用了生理神经元功能的一些描述方式,它涉及到下列的哪一些内容? ( ABC ) A 模拟神经元 B 处理单元为节点 C 加权有向图 D 生理神经元连接而成

6. 在应用和研究中采用的神经网络模型有许多种,下列的哪一些是具有代表性的? ( ABD ) A 反向传递(BP) B Hopfield网 C 自适应共振 D 双向联想存储器 7. 下列的哪一些内容与反向传播学习算法有关? ( ABCD ) A 选取比率参数 B 误差是否满足要求 C 计算权值梯度 D 权值学习修正 8. 构造初始网络后,要用某种学习算法调整它的权值矩阵,使NN在功能上满足样例集给定的输入一输出对应关系,并由此产生推理,该矩阵必须满足下列的哪一个性质? ( A ) A 收敛性 B 对称性 C 满秩性 D 稀疏性 9. 在人工神经元的功能描述中,往往会用一激发函数来表示输出,常用的一般非线性函数有下列的哪一些项? ( ABD ) A 阀值型 B 分段线性强饱和型 C 离散型 D S i gm oid型 10. 基于神经网络的推理,其应用中必须涉及到下列的哪一些内容? ( ACD ) A NN的结构模型 B NN的推理规则 C NN的学习算法 D 从NN到可解释的推理网 二、填空题: 1. 前馈网络是一种具有很强学习能力的系统,结构简单,易于编程。前馈网络通

基于人工神经网络的通信信号分类识别

基于人工神经网络的通信信号分类识别 冯 涛 (中国电子科技集团公司第54研究所,河北石家庄050081) 摘 要 通信信号的分类识别是一种典型的统计模式识别问题。系统地论述了通信信号特征选择、特征提取和分类识别的原理和方法。设计了人工神经网络分类器,包括神经网络模型的选择、分类器的输入输出表示、神经网络拓扑结构和训练算法,并提出了分层结构的神经网络分类器。 关键词 模式识别;特征提取;分类器;神经网中图分类号 TP391 文献标识码 A Classification and Identification of Communication Signal Using Artificial Neural Networks FE NG Tao (T he 54th Research Institute of CETC,Shijia zhuan g Hebei 050081,China) Abstract The classification and identificati on of communication signal is a typical statistical pattern identification.The paper discusses the theory and method of feature selection,feature extraction and classi fication &identificaiton of communication signal.A classifier based on artificial neural networks is designed,includin g the selection of neural network model,the input and output expression of the classifier,neural network topology and trainin g algorithm.Finally a hierarchical archi tecture classifier based on artificial neural networks is presented. Key words pattern recognition;features extraction;classifier;neural networks 收稿日期:2005-12-16 0 引言 在通信对抗侦察中,侦察接收设备在截获敌方通信信号后,必须经过对信号的特征提取和对信号特征的分析识别,才能变为有价值的通信对抗情报。通过对信号特征的分析识别,可以得到信号种类、通信体制、网路组成等方面的情报,从而为研究通信对抗策略、研制和发展通信对抗装备提供重要参考依据。 1 通信信号分类识别的原理 通信信号的分类识别是一种典型的模式识别应用,其作用和目的就是将某一接收到的信号正确地归入某一种类型中。一般过程如图1 所示。 图1 通信信号分类识别的一般过程 下面简单介绍这几部分的作用。 信号获取:接收来自天线的信号x (t),并对信号进行变频、放大和滤波,输出一个中频信号; A/D 变换:将中频模拟信号变换为计算机可以运算的数字信号x (n); 以上2步是信号空间x (t)到观察空间x (n )的变换映射。 特征提取:为了有效地实现分类识别,必须对原始数据进行变换,得到最能反映分类差别的特征。这些特征的选择和提取是非常重要的,因为它强烈地影响着分类器的设计和性能。理想情况下,经过特征提取得到的特征向量对不同信号类型应该有明显的差别; 分类器设计和分类决策:分类问题是根据识别对象特征的观察值将其分到某个类别中去。首先,在样本训练集基础上确定合适的规则和分类器结构,然后,学习训练得到分类器参数。最后进行分类决策,把待识别信号从特征空间映射到决策空间。 2 通信信号特征参数的选择与特征提取 2 1 通信信号特征参数的选择 选择好的特征参数可以提高低信噪比下的正确 识别率,降低分类器设计的难度,是基于统计模式识别方法最为关键的一个环节。试图根据有限的信号 信号与信息处理 24 2006Radio Engineering Vo1 36No 6

人工神经网络大作业

X X X X大学 研究生考查课 作业 课程名称:智能控制理论与技术 研究生姓名:学号: 作业成绩: 任课教师(签名) 交作业日时间:2010年12月22日

人工神经网络(artificial neural network,简称ANN)是在对大脑的生理研究的基础上,用模拟生物神经元的某些基本功能元件(即人工神经元),按各种不同的联结方式组成的一个网络。模拟大脑的某些机制,实现某个方面的功能,可以用在模仿视觉、函数逼近、模式识别、分类和数据压缩等领域,是近年来人工智能计算的一个重要学科分支。 人工神经网络用相互联结的计算单元网络来描述体系。输人与输出的关系由联结权重和计算单元来反映,每个计算单元综合加权输人,通过激活函数作用产生输出,主要的激活函数是Sigmoid函数。ANN有中间单元的多层前向和反馈网络。从一系列给定数据得到模型化结果是ANN的一个重要特点,而模型化是选择网络权重实现的,因此选用合适的学习训练样本、优化网络结构、采用适当的学习训练方法就能得到包含学习训练样本范围的输人和输出的关系。如果用于学习训练的样本不能充分反映体系的特性,用ANN也不能很好描述与预测体系。显然,选用合适的学习训练样本、优化网络结构、采用适当的学习训练方法是ANN的重要研究内容之一,而寻求应用合适的激活函数也是ANN研究发展的重要内容。由于人工神经网络具有很强的非线性多变量数据的能力,已经在多组分非线性标定与预报中展现出诱人的前景。人工神经网络在工程领域中的应用前景越来越宽广。 1人工神经网络基本理论[1] 1.1神经生物学基础 可以简略地认为生物神经系统是以神经元为信号处理单元,通过广泛的突触联系形成的信息处理集团,其物质结构基础和功能单元是脑神经细胞即神经元(neu ron)。(1)神经元具有信号的输入、整合、输出三种主要功能作用行为。突触是整个神经系统各单元间信号传递驿站,它构成各神经元之间广泛的联接。(3)大脑皮质的神经元联接模式是生物体的遗传性与突触联接强度可塑性相互作用的产物,其变化是先天遗传信息确定的总框架下有限的自组织过程。 1.2建模方法 神经元的数量早在胎儿时期就已固定,后天的脑生长主要是指树突和轴突从神经细胞体中长出并形成突触联系,这就是一般人工神经网络建模方法的生物学依据。人脑建模一般可有两种方法:①神经生物学模型方法,即根据微观神经生物学知识的积累,把脑神经系统的结构及机理逐步解释清楚,在此基础上建立脑功能模型。②神经计算模型方法,即首先建立粗略近似的数学模型并研究该模型的动力学特性,然后再与真实对象作比较(仿真处理方法)。 1.3概念 人工神经网络用物理可实现系统来模仿人脑神经系统的结构和功能,是一门新兴的前沿交叉学科,其概念以T.Kohonen.Pr的论述最具代表性:人工神经网络就是由简单的处理单元(通常为适应性)组成的并行互联网络,它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。 1.4应用领域 人工神经网络在复杂类模式识别、运动控制、感知觉模拟方面有着不可替代的作用。概括地说人工神经网络主要应用于解决下述几类问题:模式信息处理和模式识别、最优化问题、信息的智能化处理、复杂控制、信号处理、数学逼近映射、感知觉模拟、概率密度函数估计、化学谱图分析、联想记忆及数据恢复等。 1.5理论局限性 (1)受限于脑科学的已有研究成果由于生理试验的困难性,目前对于人脑思维与记忆机制的认识尚很肤浅,对脑神经网的运行和神经细胞的内部处理机制还没有太多的认识。 (2)尚未建立起完整成熟的理论体系目前已提出的众多人工神经网络模型,归纳起来一般都是一个由节点及其互连构成的有向拓扑网,节点间互连强度构成的矩阵可通过某种学

《无线传感器网络》试题.

《无线传感器网络》试题 一、填空题(每题4分,共计60分) 1、传感器网络的三个基本要素:传感器,感知对象,观察者 2、传感器网络的基本功能:协作地感知、采集、处理和发布感知信息 3、无线传感器节点的基本功能:采集、处理、控制和通信等 4、传感器网络常见的时间同步机制有: 5、无线通信物理层的主要技术包括:介质的选择、频段的选择、调制技术和扩频技术 6扩频技术按照工作方式的不同,可以分为以下四种: :直接序列扩频、跳频、跳时、宽带线性调频扩频 7、定向扩散路由机制可以分为三个阶段:周期性的兴趣扩散、梯度建立和路径加强 8、无线传感器网络特点:大规模网络、自组织网络、可靠的网络、以数据为中心的网络、应用相关的网络 9、无线传感器网络的关键技术主要包括:网络拓扑控制、网络协议、时间同步、定位技术、数据融合及管理、网络安全、应用层技术等 10、IEEE 802.15.4标准主要包括:物理层和MAC层的标准 11、简述无线传感器网络后台管理软件结构与组成:后台管理软件通常由数据库、数据处理引擎、图形用户界面和后台组件四个部分组成。 12、数据融合的内容主要包括:多传感器的目标探测、数据关联、跟踪与识别、情况评估和预测 13、无线传感器网络可以选择的频段有:868MHZ、915MHZ、2.4GHZ 5GHZ

14、传感器网络的电源节能方法:休眠机制、数据融合等, 15、传感器网络的安全问题:(1) 机密性问题。(2) 点到点的消息认证问题。(3) 完整性鉴别问题。 16、802.11规定三种帧间间隔:短帧间间隔SIFS,长度为28 s 、点协调功能帧间间隔PIFS长度是SIFS 加一个时隙(slot)长度,即78 s 分布协调功能帧间间隔DIFS ,DIFS长度=PIFS +1个时隙长度,DIFS 的长度为128 s 17、任意相邻区域使用无频率交叉的频道是,如:1、6、11频道。 18、802.11网络的基本元素SSID标示了一个无线服务,这个服务的内容包括了:接入速率、工作信道、认证加密方法、网络访问权限等 19、传感器是将外界信号转换为电信号的装置,传感器一般由敏感元件、转换元件、转换电路三部分组成 20、传感器节点由传感器模块、处理器模块、无线通信模块和能量供应模块四部分组成 二、基本概念解释(每题5分,共40分) 1.简述无线网络介质访问控制方法CSMA/CA的工作原理 CSMA/CA机制: 当某个站点(源站点)有数据帧要发送时,检测信道。若信道空闲,且在DIFS时间内一直空闲,则发送这个数据帧。发送结束后,源站点等待接收ACK确认帧。如果目的站点接收到正确的数据帧,还需要等待SIFS时间,然后向源站点发送ACK确认帧。若源站点在规定的时间内接收到ACK确认帧,则说明没有发生冲突,这一帧发送成功。

神经网络基于BP网络的多层感知器实验报告

神经网络基于BP网络的多层感知器实验报告 二、基于BP网络的多层感知器一:实验目的: 1、理解多层感知器的工作原理 2、通过调节算法参数了解参数的变化对于感知器训练的影响 3、了解多层感知器局限性二:实验原理:BP的基本思想:信号的正向传播误差的反向传播–信号的正向传播:输入样本从输入层传入,经各隐层逐层处理后,传向输出层。 –误差的反向传播:将输入误差以某种形式通过隐层向输入层逐层反传,并将误差分摊给各层的所有单元,从而获得各层单元的误差信号来作为修正各单元权值的依据。 1、基本BP算法的多层感知器模型: 2、BP学习算法的推导:当网络输出与期望输出不等时,存在输出误差E将上面的误差定义式展开至隐层,有进一步展开至输入层,有调整权值的原则是使误差不断地减小,因此应使权值的调整量与误差的梯度下降成正比,即η∈(0,1)表示比例系数,在训练中反应学习速率 BP算法属于δ学习规则类,这类算法被称为误差的梯度下降(Gradient Descent)算法。<实验步骤> 1、用Matlab编程,实现解决该问题的单样本训练BP网络,设置一个停止迭代的误差Emin和最大迭代次数。在调试过程中,通过不断调整隐层节点数,学习率η,找到收敛速度快且误差小

的一组参数。产生均匀分布在区间[-4,4]的测试样本,输入建立的模型得到输出,与Hermit多项式的期望输出进行比较计算总误差(运行5次,取平均值),并记录下每次迭代结束时的迭代次数。(要求误差计算使用RME,Emin 设置为0、1)程序如下:function dyb %单样本程序 clc; close all; clear; x0=[1:;-4:0、08:4];%样本个 x0(1,:)=-1; x=x0'; yuzhi=0、1;%阈值 j=input('请输入隐层节点数 j = ');%隐层节点数 n=input('请输入学习效率 n = ');%学习效率 w=rand(1,j); w=[yuzhi,w]; %输出层阈值 v=rand(2,j); v(1,:)=yuzhi;%隐层阈值 err=zeros(1,); wucha=0; zhaosheng=0、01*randn(1,);%噪声erro=[]; ERRO=[];%误差,为画收敛曲线准备 Emin=0、1; d=zeros(1,); for m=1: d(m)=hermit(x(m,2));%期望 end; o=zeros(1,); j=zeros(1,j); =zeros(1,j); p=1; q=1; azc=0; acs=0; for z=1:5 while q<30000 Erme=0; for p=1: y=zeros(1,j); for i=1:j j(1,i)=x(p,:)*v(:,i); y(1,i)=1/(1+exp(-j(1,i))); end; y=[-1 y]; o(p)=w*y'+zhaosheng(p);%噪声 wucha = d(p)-o(p); err(1,p)=1/2*wucha^2; erro=[erro,wucha]; for m=1:j+1 w(1,m)=w(1,m)+n*wucha*y(1,m); end; for m=1:j v(:,m)=v(:,m)+n*wucha*w(1,m)*y(1,m)*(1-y(1,m))*x(p,:)'; end q=q+1; end; for t=1:; Erme=Erme+err(1,t); end; err=zeros(1,); Erme=sqrt(Erme/); ERRO=[ERRO,Erme]; if

人工神经网络复习题

《神经网络原理》 一、填空题 1、从系统的观点讲,人工神经元网络是由大量神经元通过极其丰富和完善的连接而构成的自适应、非线性、动力学系统。 2、神经网络的基本特性有拓扑性、学习性和稳定收敛性。 3、神经网络按结构可分为前馈网络和反馈网络,按性能可分为离散型和连续型,按学习方式可分为有导师和无导师。 4、神经网络研究的发展大致经过了四个阶段。 5、网络稳定性指从t=0时刻初态开始,到t时刻后v(t+△t)=v(t),(t>0),称网络稳定。 6、联想的形式有两种,它们分是自联想和异联想。 7、存储容量指网络稳定点的个数,提高存储容量的途径一是改进网络的拓扑结构,二是改进学习方法。 8、非稳定吸引子有两种状态,一是有限环状态,二是混沌状态。 9、神经元分兴奋性神经元和抑制性神经元。 10、汉明距离指两个向量中对应元素不同的个数。 二、简答题 1、人工神经元网络的特点? 答:(1)、信息分布存储和容错性。 (2)、大规模并行协同处理。 (3)、自学习、自组织和自适应。 (4)、人工神经元网络是大量的神经元的集体行为,表现为复杂

的非线性动力学特性。 (5)人式神经元网络具有不适合高精度计算、学习算法和网络设计没有统一标准等局限性。 2、单个神经元的动作特征有哪些? 答:单个神经元的动作特征有:(1)、空间相加性;(2)、时间相加性;(3)、阈值作用;(4)、不应期;(5)、可塑性;(6)疲劳。 3、怎样描述动力学系统? 答:对于离散时间系统,用一组一阶差分方程来描述: X(t+1)=F[X(t)]; 对于连续时间系统,用一阶微分方程来描述: dU(t)/dt=F[U(t)]。 4、F(x)与x 的关系如下图,试述它们分别有几个平衡状态,是否为稳定的平衡状态? 答:在图(1)中,有两个平衡状态a 、b ,其中,在a 点曲线斜率|F ’(X)|>1,为非稳定平稳状态;在b 点曲线斜率|F ’(X)|<1,为稳定平稳状态。 在图(2)中,有一个平稳状态a ,且在该点曲线斜率|F ’(X)|>1,为非稳定平稳状态。

人工神经网络作业-单层感知器

3.5单层感知器 # include # include # define N 100 int sgn(double x) //符号运算函数 { int y; if(x>0||x==0) y=1; else y=-1; return y; } void main() { double W[4]={0.0,0.0,0.0,0.0},X[6][4]={{-1,0.8,0.5,0},{-1,0.9,0.7,0.3},{-1,1,0.8,0.5}, {-1,0,0.2,0.3},{-1,0.2,0.1,1.3},{-1,0.2,0.7,0.8}}; int err,o[6],i,j,k,num,d[6]={1,1,1,-1,-1,-1}; double n,WX; n=1.0; k=0; do { k++; num=0; for(i=0;i<6;i++) { WX=0.0; for(j=0;j<4;j++) WX=WX+W[j]*X[i][j]; o[i]=sgn(WX); err=d[i]-o[i]; for(j=0;j<4;j++) W[j]=W[j]+n*err*X[i][j]; if(err==0) num++; } }while(num!=6); printf("调整后的权值矩阵为:\n"); for(j=0;j<4;j++) printf("%f\n",W[j]); printf("分类结果为:\n"); for(i=0;i<6;i++) printf("%d\n",o[i]);

} 3.6单次训练的结果 # include # include double Sig(double x) //单极性函数 { double y; y=1.0/(1.0+exp(-x)); return y; } void main() { double x[3]={-1,1,3},V[3][3]={{0,3,-1},{0,1,2},{0,-2,0}},W[3][3]={{0,2,3},{0,1,1},{0,0,-2}}; double d[3]={0,0.95,0.05},nety[3],neto[3],Y[3],O[3],dety[3],deto[3]; double D,yita; int i,j; yita=1.0; FILE *fp; fp=fopen("out.txt","w"); fprintf(fp,"初始W矩阵:\n"); for(i=0;i<3;i++) { for(j=1;j<3;j++) fprintf(fp,"%f ",W[i][j]); fprintf(fp,"\n"); } fprintf(fp,"初始V矩阵:\n"); for(i=0;i<3;i++) { for(j=1;j<3;j++) fprintf(fp,"%f ",V[i][j]);

无线传感器网络试题库附答案

无线传感器网络试题库附答案 《无线传感器网络》 一、填空题(每题4分,共计60分) 1.传感器网络的三个基本要素:传感器、感知对象、用户(观察者) 2.传感器网络的基本功能:协作式的感知、数据采集、数据处理、发布感知信息3、 3.无线传感器节点的基本功能:采集数据、数据处理、控制、通信 4.无线通信物理层的主要技术包括:介质选择、频段选取、调制技术、扩频技术 5.扩频技术按照工作方式的不同,可以分为以下四种:直接序列扩频、跳频、跳时、宽带 线性调频扩频 6.定向扩散路由机制可以分为三个阶段:兴趣扩展阶段、梯度建立阶段、路径加强阶段 7.无线传感器网络特点:大规模网络、自组织网络、可靠的网络、以数据为中心的网络、 应用相关的网络 8.无线传感器网络的关键技术主要包括:网络拓扑控制、网络协议、时间同步、定位技术、 数据融合及管理、网络安全、应用层技术

9.IEEE标准主要包括:物理层。介质访问控制层 10.简述无线传感器网络后台管理软件结构与组成:后台管理软件通常由数据库、数据处理 引擎、图形用户界面和后台组件四个部分组成。 11.数据融合的内容主要包括:多传感器的目标探测、数据关联、跟踪与识别、情况评估和 预测 12.无线传感器网络可以选择的频段有:_800MHz___915M__、、___5GHz 13.传感器网络的电源节能方法:_休眠(技术)机制、__数据融合 14.传感器网络的安全问题:(1)机密性问题。(2)点到点的消息认证问题。(3)完整 性鉴别问题。 15.规定三种帧间间隔:短帧间间隔SIFS,长度为28s a)、点协调功能帧间间隔PIFS长度是SIFS加一个时隙(slot)长度,即78s b)分布协调功能帧间间隔DIFS,DIFS长度=PIFS+1个时隙长度,DIFS的长度为128 s 16.任意相邻区域使用无频率交叉的频道是,如:1、6、11频道。 17.网络的基本元素SSID标示了一个无线服务,这个服务的内容

神经网络 感知器的分类能力

作业一:感知器的分类能力 一、作业要求 已知矩阵P=[0.1 0.7 0.8 0.8 1.0 0.3 0.0 -0.3 -0.5 -1.5; 1.2 1.8 1.6 0.6 0.8 0.5 0.2 0.8 -1.5 -1.3]; T=[1 1 1 0 0 1 1 1 0 0 ; 0 0 0 0 0 1 1 1 1 1] 对以上输入、输出样本进行分类。要求画出最后的线形图。 二、分析题目要求 首先画出题目给定的点。要求设计一个二输入感知神经网络,将十个输入向为四类。 图1 给定的点 三、构建初始网络 应用newp()构造一个神经元感知器神经网络,其输入向量在[-2 2]之间。由于为2输入,故神经元数量为2。 四、训练网络 net=train(net,P,T); 设置最大训练次数为10。

五、 实验结果 5.1 本次运行的最优分类情况: 图2 分类线 5.2 误差曲线 当学习函数为感知器学习函数learnp 时,其误差曲线为图3;当学习函数为标准感知器学习函数learnp n 时,其误差曲线为图4。 图3 学习函数learnp 的误差曲线 图4 学习函数learnpn 的误差曲线 六、网络仿真 应用sim 函数来进行网络仿真,实现对任何其他输入向量的模式划分。选取 Q=[-0.4;0.9],可知其非常靠近原样本的一组数据即[-0.3 0.8],其目标输出应为为 [1 1]。现在观察网络仿真结果,发现其被划分到相应的分类中。

七、结论与心得 该感知器网络完成了一个简单的四类模式划分问题。通过此次实验,可得感知器具有根据已有数据自主学习规则的能力,这对于我们研究无固定函数表达式的输入输出有重要意义。此外,通过比较两个学习函数后,发现learnp的误差曲线更符合要求,所以选择学习函数选择learnp。 做本题前一直在思考,10组数据如何分配,哪些做学习样本,哪些做测试样本。最后决定取原样本中相近的数据来检测网络的识别能力。 八、附录: Matlab程序代码 P=[0.1 0.7 0.8 0.8 1.0 0.3 0.0 -0.3 -0.5 -1.5; 1.2 1.8 1.6 0.6 0.8 0.5 0.2 0.8 -1.5 -1.3]; T=[1 1 1 0 0 1 1 1 0 0 ; 0 0 0 0 0 1 1 1 1 1] net=newp([-2 2;-2 2],2,'hardlim','learnp'); net.trainParam.epochs=10; net=train(net,P,T); Q=[-0.4;0.9]; Y=sim(net,Q); plotpv(P,T); plotpc(net.iw{1},net.b{1});%画分类线 hold on;

无线传感器网络发展与路由

1、引言无线传感器网络(Wireless Sensor Network)是由大规模部署的成百上千的节点构成。这些微传感器节点具有感知能力、无线通信能力以及计算能力。无线传感器网络的发展得益于微机电系统以及处理器、存储技术的发展,这些发展使得制造低功率、微体积、低成本的微传感器节点逐步成为现实。无线传感器网络综合了传感器技术、嵌入式计算技术、分布式信息处理技术和通信技术,各个节点能够协同地 1、引言 无线传感器网络(Wireless Sensor Network)是由大规模部署的成百上千的节点构成。这些微传感器节点具有感知能力、无线通信能力以及计算能力。无线传感器网络的发展得益于微机电系统以及处理器、存储技术的发展,这些发展使得制造低功率、微体积、低成本的微传感器节点逐步成为现实。无线传感器网络综合了传感器技术、嵌入式计算技术、分布式信息处理技术和通信技术,各个节点能够协同地实时监测、感知和采集网络分布区域内的各种环境或监测对象的信息,并将处理后的信息传送到需要这些信息的用户(观察者)。

由于无线传感器网络具有可快速部署、可自组织和高容错性的特点,因此非常适合在军事上应用。比如通过飞机将传感器节点撒播在战场上,可以组成网络对战场中化学武器的使用、敌方车辆和士兵的运动进行及时的监测和报告。同时,无线传感器网络对于比较恶劣的环境和人不宜到达的场所也非常适用,比如荒岛上的环境和生态监控,原始森林的防火和动物活动情况监测,污染区域以及地震和火灾等突发灾难现场的监控。另外,它还可用于城市的交通监测,医疗机构的病员及环境监测,大型车间原材料和仓库货物进出情况的监测,以及机场、大型工业园区的安全监测。无线传感器网络可以使人们在任何时间、地点和任何环境条件下获取大量信息。因此,这种网络系统可以被广泛地应用于国防军事、国家安全、环境监测、交通管理、医疗卫生、制造业、反恐抗灾等领域。可以说无线传感器网络是信息感知和采集的一场革命,是21世纪最重要的技术之一。 2、无线传感器网络 在讨论无线传感器网络之前,有必要了解无线传感器网络的组成和协议框架。典型的无线传感器网络如图1所示。

人工神经网络大作业

X X X X 大学 研究生考查课 作业 课程名称:智能控制理论与技术 研究生姓名:学号: 作业成绩: 任课教师(签名) 交作业日时间:2010 年12 月22 日

人工神经网络(artificial neural network,简称ANN)是在对大脑的生理研究的基础上,用模拟生物神经元的某些基本功能元件(即人工神经元),按各种不同的联结方式组成的一个网络。模拟大脑的某些机制,实现某个方面的功能,可以用在模仿视觉、函数逼近、模式识别、分类和数据压缩等领域,是近年来人工智能计算的一个重要学科分支。 人工神经网络用相互联结的计算单元网络来描述体系。输人与输出的关系由联结权重和计算单元来反映,每个计算单元综合加权输人,通过激活函数作用产生输出,主要的激活函数是Sigmoid函数。ANN有中间单元的多层前向和反馈网络。从一系列给定数据得到模型化结果是ANN的一个重要特点,而模型化是选择网络权重实现的,因此选用合适的学习训练样本、优化网络结构、采用适当的学习训练方法就能得到包含学习训练样本范围的输人和输出的关系。如果用于学习训练的样本不能充分反映体系的特性,用ANN也不能很好描述与预测体系。显然,选用合适的学习训练样本、优化网络结构、采用适当的学习训练方法是ANN的重要研究内容之一,而寻求应用合适的激活函数也是ANN研究发展的重要内容。由于人工神经网络具有很强的非线性多变量数据的能力,已经在多组分非线性标定与预报中展现出诱人的前景。人工神经网络在工程领域中的应用前景越来越宽广。 1人工神经网络基本理论[1] 1. 1神经生物学基础 可以简略地认为生物神经系统是以神经元为信号处理单元, 通过广泛的突触联系形成的信息处理集团, 其物质结构基础和功能单元是脑神经细胞即神经元(neu ron)。(1) 神经元具有信号的输入、整合、输出三种主要功能作用行为。突触是整个神经系统各单元间信号传递驿站, 它构成各神经元之间广泛的联接。(3) 大脑皮质的神经元联接模式是生物体的遗传性与突触联接强度可塑性相互作用的产物, 其变化是先天遗传信息确定的总框架下有限的自组织过程。 1. 2建模方法 神经元的数量早在胎儿时期就已固定,后天的脑生长主要是指树突和轴突从神经细胞体中长出并形成突触联系, 这就是一般人工神经网络建模方法的生物学依据。人脑建模一般可有两种方法: ①神经生物学模型方法, 即根据微观神经生物学知识的积累, 把脑神经系统的结构及机理逐步解释清楚, 在此基础上建立脑功能模型。②神经计算模型方法, 即首先建立粗略近似的数学模型并研究该模型的动力学特性, 然后再与真实对象作比较(仿真处理方法)。 1. 3概念 人工神经网络用物理可实现系统来模仿人脑神经系统的结构和功能, 是一门新兴的前沿交叉学科, 其概念以T.Kohonen. Pr 的论述最具代表性: 人工神经网络就是由简单的处理单元(通常为适应性) 组成的并行互联网络, 它的组织能够模拟生物神经系统对真实世界物体所作出的交互反应。 1. 4应用领域 人工神经网络在复杂类模式识别、运动控制、感知觉模拟方面有着不可替代的作用。概括地说人工神经网络主要应用于解决下述几类问题: 模式信息处理和模式识别、最优化问题、信息的智能化处理、复杂控制、信号处理、数学逼近映射、感知觉模拟、概率密度函数估计、化学谱图分析、联想记忆及数据恢复等。 1. 5理论局限性 (1) 受限于脑科学的已有研究成果由于生理试验的困难性, 目前对于人脑思维与记忆机制的认识尚很肤浅, 对脑神经网的运行和神经细胞的内部处理机制还没有太多的认识。 (2) 尚未建立起完整成熟的理论体系目前已提出的众多人工神经网络模型,归纳起来一般都是一个由节点及其互连构成的有向拓扑网, 节点间互连强度构成的矩阵可通过某种学

基于人工神经网络的图像识别

本文首先分析了图像识别技术以及bp神经网络算法,然后详细地阐述了人工神经网络图像识别技术。 【关键词】人工神经网络 bp神经网络图像识别识别技术 通常而言,所谓图像处理与识别,便是对实际图像进行转换与变换,进而达到识别的目的。图像往往具有相当庞大的信息量,在进行处理图像的时候要进行降维、数字化、滤波等程序,以往人们进行图像识别时采用投影法、不变矩法等方法,随着计算机技术的飞速发展,人工神经网络的图像识别技术将逐渐取代传统的图像识别方法,获得愈来愈广泛的应用。 1 人工神经网络图像识别技术概述 近年来,人工智能理论方面相关的理论越来越丰富,基于人工神经网络的图像识别技术也获得了非常广泛的应用,将图像识别技术与人工神经网络技术结合起来的优点是非常显著的,比如说: (1)由于神经网络具有自学习功能,可以使得系统能够适应识别图像信息的不确定性以及识别环境的不断变化。 (2)在一般情况下,神经网络的信息都是存储在网络的连接结构以及连接权值之上,从而使图像信息表示是统一的形式,如此便使得知识库的建立与管理变得简便起来。 (3)由于神经网络所具有的并行处理机制,在处理图像时可以达到比较快的速度,如此便可以使图像识别的实时处理要求得以满足。 (4)由于神经网络可增加图像信息处理的容错性,识别系统在图像遭到干扰的时候仍然能正常工作,输出较准确的信息。 2 图像识别技术探析 2.1 简介 广义来讲,图像技术是各种与图像有关的技术的总称。根据研究方法以及抽象程度的不同可以将图像技术分为三个层次,分为:图像处理、图像分析以及图像理解,该技术与计算机视觉、模式识别以及计算机图形学等学科互相交叉,与生物学、数学、物理学、电子学计算机科学等学科互相借鉴。此外,随着计算机技术的发展,对图像技术的进一步研究离不开神经网络、人工智能等理论。 2.2 图像处理、图像识别与图像理解的关系 图像处理包括图像压缩、图像编码以及图像分割等等,对图像进行处理的目的是判断图像里是否具有所需的信息并滤出噪声,并对这些信息进行确定。常用方法有灰度,二值化,锐化,去噪等;图像识别则是将经过处理的图像予以匹配,并且对类别名称进行确定,图像识别可以在分割的基础之上对所需提取的特征进行筛选,然后再对这些特征进行提取,最终根据测量结果进行识别;所谓图像理解,指的是在图像处理与图像识别的基础上,根据分类作结构句法分析,对图像进行描述与解释。所以,图像理解包括图像处理、图像识别和结构分析。就图像理解部分而言,输入是图像,输出是对图像的描述解释。 3 人工神经网络结构和算法 在上个世纪八十年代,mcclelland与rumelhant提出了一种人工神经网络,截止现在,bp神经网络已经发展成为应用最为广泛的神经网络之一,它是一种多层前馈神经网络,包括输入层、输出层和输入层输出层之间隐藏层,如图1所示,便是一种典型的bp神经网络结构。 bp神经网络是通过不断迭代更新权值使实际输入与输出关系达到期望,由输出向输入层反向计算误差,从而通过梯度下降方法不断修正各层权值的网络。 bp神经网络结构算法如下所述: (1)对权值矩阵,学习速率,最大学习次数,阈值等变量和参数进行初始化设置; (2)在黑色节点处对样本进行输入;

无线传感器网络课后习题答案

1-2.什么是无线传感器网络? 无线传感器网络是大量的静止或移动的传感器以自组织和多跳的方式构成的无线网络。目的是协作地探测、处理和传输网络覆盖区域内感知对象的监测信息,并报告给用户。 1-4.图示说明无线传感器网络的系统架构。 1-5.传感器网络的终端探测结点由哪些部分组成?这些组成模块的功能分别是什么? (1)传感模块(传感器、数模转换)、计算模块、通信模块、存储模块电源模块和嵌入式软件系统 (2)传感模块负责探测目标的物理特征和现象,计算模块负责处理数据和系统管理,存储模块负责存放程序和数据,通信模块负责网络管理信息和探测数据两种信息的发送和接收。另外,电源模块负责结点供电,结点由嵌入式软件系统支撑,运行网络的五层协议。 1-8.传感器网络的体系结构包括哪些部分?各部分的功能分别是什么? (1)网络通信协议:类似于传统Internet网络中的TCP/IP协议体系。它由物理层、数据链路层、网络层、传输层和应用层组成。 (2)网络管理平台:主要是对传感器结点自身的管理和用户对传感器网络的管理。包括拓扑控制、服务质量管理、能量管理、安全管理、移动管理、网络管理等。 (3)应用支撑平台:建立在网络通信协议和网络管理技术的基础之上。包括一系列基于监测任务的应用层软件,通过应用服务接口和网络管理接口来为终端用户提供各种具体应用的支持。 1-9.传感器网络的结构有哪些类型?分别说明各种网络结构的特征及优缺点。 (1)根据结点数目的多少,传感器网络的结构可以分为平面结构和分级结构。如果网络的规模较小,一般采用平

面结构;如果网络规模很大,则必须采用分级网络结构。 (2)平面结构: 特征:平面结构的网络比较简单,所有结点的地位平等,所以又可以称为对等式结构。 优点:源结点和目的结点之间一般存在多条路径,网络负荷由这些路径共同承担。一般情况下不存在瓶颈,网络比较健壮。 缺点:①影响网络数据的传输速率,甚至造成网络崩溃。②整个系统宏观上会损耗巨大能量。③可扩充性差,需要大量控制消息。 分级结构: 特征:传感器网络被划分为多个簇,每个簇由一个簇头和多个簇成员组成。这些簇头形成了高一级的网络。簇头结点负责簇间数据的转发,簇成员只负责数据的采集。 优点:①大大减少了网络中路由控制信息的数量,具有很好的可扩充性。②簇头可以随时选举产生,具有很强的抗毁性。 缺点:簇头的能量消耗较大,很难进人休眠状态。 1-13.讨论无线传感器网络在实际生活中有哪些潜在的应用。 (1)用在智能家具系统中,将传感器嵌入家具和家电中,使其与执行单元组成无线网络,与因特网连接在一起。 (2)用在智能医疗中,将传感器嵌入医疗设备中,使其能接入因特网,将患者数据传送至医生终端。 (3)用在只能交通中,运用无线传感器监测路面、车流等情况。 2-2.传感器由哪些部分组成?各部分的功能是什么? 2-5.集成传感器的特点是什么? 体积小、重量轻、功能强、性能好。 2-7.传感器的一般特性包括哪些指标? 灵敏度、响应特性、线性范围、稳定性、重复性、漂移、精度、分辨(力)、迟滞。 2-15.如何进行传感器的正确选型? 1.测量对象与环境:分析被测量的特点和传感器的使用条件选择何种原理的传感器。 2.灵敏度:选择较高信噪比的传感器,并选择适合的灵敏度方向。 3.频率响应特性:根据信号的特点选择相应的传感器响应频率,以及延时短的传感器。 4.线性范围:传感器种类确定后观察其量程是否满足要求,并且选择误差小的传感器。 5.稳定性:根据使用环境选择何时的传感器或采用适当的措施减小环境影响,尽量选择稳定性好的传感器。 6.精度:选择满足要求的,相对便宜的传感器。 2-17.简述磁阻传感器探测运动车辆的原理。 磁阻传感器在探测磁场的通知探测获得车轮速度、磁迹、车辆出现和运动方向等。使用磁性传感器探测方向、角度或电流值,可以间接测定这些数值。因为这些属性变量必须对相应的磁场产生变化,一旦磁传感器检测出场强变化,则采用一些信号处理办法,将传感器信号转换成需要的参数值。 3-2.无线网络通信系统为什么要进行调制和解调?调制有哪些方法? (1)调制和解调技术是无线通信系统的关键技术之一。调制对通信系统的有效性和可靠性有很大的影响。采用什

无线传感器网络通信与路由研究

网络通讯及安全本栏目责任编辑:冯蕾 无线传感器网络通信与路由研究 肖军,李科,王建华 (西北核技术研究所,陕西西安710024) 摘要:随着无线通信和数字电子技术的发展,由低成本、低功耗、多功能的无线传感器节点组成的无线传感网络得到迅速发展。无线传感网络是由很多无线传感器节点密集分布组成的,它具有以下特性:各传感器节点位置随机分布,具有自组织特性;各节点共同协作完成数据收集、路由任务,具有很好的协作特性。无线传感网络的这些特性使得它在医疗、环境监测、军事和智能家庭等领域有了广泛的应用。 本文从介绍无线传感器网络的发展入手,分析了无线传感器的网络结构,节点结构,节点的限制,网络特点,在此基础上继续分析了无线传感器网络的路由协议以及现有的路由协议分类。 关键词:无线传感器;路由;节点;协议 中图分类号:TP393文献标识码:A文章编号:1009-3044(2008)18-21621-03 TheResearchofCommunicationsandRouteofWirelessSensorNetwork XIAOJun,LIKe,WANGJian-hua (NorthwestInstituteofNuclearEngineering,Xi'an710024,China) Abstract:Withtheadvancesofwirelesscommunicationandmicro-processortechnologies,itbecomespossibleforlargeamountsoflow-cost,low-power,multifunctionalsensornodestobuildhigh-qualitywirelesssensornetworks.Thesenodeshavemanyspecificfeatures:denselydistributinginworkingfieldwithrandomlocationandself-organizationability;adaptivelycollaboratingwithothernodesfordataroutingandtransmission.AlltheseadvantagesenablebroaduseofwirelesssensornetworksinthefieldsofHealth-care,EnvironmentMon-itoring,MilitaryandSmartHome. Thisarticleobtainsfromthewirelesssensornetworkcommunicationsresearch,andstudytheframework,characteristicofthewirelesssesornetwork,thenanalysetheframeworkofthenetnoteandthelimitingconditionofthenetnote;atlast,thispaperstudytherouterprotocolofthewirelesssensornetwork. Keywords:thewirelesssensor;route;node;protocol 近年来随着微电子技术、传感器技术及通信技术的发展,无线传感器网络技术发展迅猛[1],进展很快。无线传感器网络是由一组传感器节点通过无线连接构成的无线网络,它布置大量微型的智能传感器节点,通过节点的协同工作来采集和处理网络覆盖区域中的目标信息。 无线传感器网络无论是在国家安全,还是国民经济等方面均有着广泛的应用前景。未来,传感器网络将向天、空、海、陆、地下一体化综合传感器网络的方向发展,最终将成为现实世界和数字世界的接口,深入到人们生活的各个层面,像互联网一样改变人们的生活方式。可以说无线传感器网络是信息感知和采集的一场革命,是21世纪最重要的技术之一。本文主要有武定县传感器网络的特点入手,着重介绍传感器的网络机构,节点的布置结构及其限制条件,以及对应此结构的路由协议的介绍。 1无线传感器网络的特点 无线传感器网络是一种新兴技术,它是将传感器技术,通信技术以及网络技术结合的产物,相较于传统的网络以及传感器,它具有突出的特点: (1)大规模网络[2] 为了获取精确信息,在监测区域通常部属大量传感器节点,传感器节点数量可能达到上万个,甚至更多。传感器网络的大规模包含两个含义:一是分布的地理区域大,如一片森林;二是节点分布密集,在一个面积不大的空间内可能有大量的节点。 (2)自组织网络 布置传感器节点时,节点的位置通常不能预先精确设定,节点之间的邻居关系也不能预先知道。这样就要求传感器节点有自组织的能力,能够自动进行配置和管理,通过拓扑控制机制和网络协议自动形成多跳无线网络。 (3)动态性网络 传感器网络的拓扑结构可能由于如下原因而改变:①环境因素和电能耗尽造成节点出现故障或失效;②环境条件变化造成无线通信链路带宽变化,甚至时断时续;③传感器节点、感知对象、观察者可能都具有移动性;④新节点的加入。因此,在设计传感器网络时,就要求考虑网络具有能适应这种变化的能力。 (4)可靠的网络 收稿日期:2008-04-10 作者简介:肖军(1976-),陕西洛南人,工程师,计算机与软件开发;李科(1983-),湖北天门人,助理工程师,计算机与软件开发;王建华(1964-),江西定南人,高级工程师,机电工程。 1621

相关文档
最新文档