感知机算法的c语言实现

感知机算法的c语言实现

ID:31458138

大小:50.00 KB

页数:4页

时间:2019-01-10

感知机算法的c语言实现_第1页
感知机算法的c语言实现_第2页
感知机算法的c语言实现_第3页
感知机算法的c语言实现_第4页
资源描述:

《感知机算法的c语言实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、感知机算法的C语言实现维数n=3时,分别取M=10,M=20,M=30(1)当M=10时,收敛时,迭代次数K=1,权矩阵矢量为W=[-0.478851,0.458190,-0.156789],阈值,正确分类个数为26个。正确分类率。(2)当M=20时,收敛时,迭代次数K=20,权矩阵矢量为W=[-0.348414,0.448089,0.189322],阈值,正确分类个数为28个。正确分类率为。(3)当M=30时,收敛时,迭代次数K=2,权矩阵矢量为W=[-0.305788,-0.159451,0.640561],阈值,正确分类个数为

2、30个。正确分类率为。维数n=5时,分别取M=10,M=20,M=30(1)当M=10时,收敛时,迭代次数K=2,权矢量矩阵为W=[-0.274457,0.368049,0.363532,-0.226269,0.356574],阈值,正确分类个数为26个。正确分类率为。(2)当M=20时,收敛时,迭代次数K=2,权矩阵矢量为W=[-0.222079,-0.145569,-0.102233,-0.287663,0.645226],阈值,正确分类个数为27个。正确分类率为。(3)当M=30时,收敛时,迭代次数K=2,权矢量矩阵为W=[-

3、0.190624,-0.027136,0.251925,0.309026,0.347021],阈值。正确分类个数为30个。正确分类率为。程序如下所示:#include#include#include#include#definePI3.1415926#defineCOUNT30//样本训练次数#defineDIMEN5//输入样本维度/***************函数名:ran_f函数功能:产生0到1之间均匀分布的随机数接口参数:*pdouble型指针变量函数返

4、回值adouble型****************/doubleran_f(double*p){doublea;srand((unsigned)time(NULL));*p=rand();a=*p/32767.0;return(a);}voidmain(){doublex[COUNT][DIMEN];//输入样本训练数据inty[COUNT];//训练输出intd[COUNT];//理想输出doubleW[COUNT];//权值矩阵doublethres;//阈值doubleeps=0.00001;//进行收敛判断的条件doubl

5、edeta=0.2;//学习因子doubler[1]={3.0};//随机数种子doublext[30][5];//测试数据intdt[30];//理想数据输出doublem1,m2,s,dp,ep;//dp为理想输出与实际输出的差,ep为均方误差intyt[30];//测试输出intcount=0;//测试正确的数目doubleRate;//正确分类率inti,j,k;for(i=0;i

6、[j]=sqrt(-2*log(m1))*sin(2*PI*m2);//产生正态分布随机数}if(x[i][1]>=0)d[i]=1;elsed[i]=0;}srand((unsigned)time(NULL));for(j=0;j

7、;j=0)y[i]=1;elsey[i]=0;dp=(double)(d[i]-y[i]);for(j=0;j

8、d",k);printf("权值:");for(j=0;j

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。