![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
模式识别,给一个训练样本X1一个测试样本X2和训练样本的分类Y1,求测试样本的分类Y2?matlab程序。
3个回答
展开全部
net = newff(minmax(datag), [20 1] ,{'tansig','purelin'},'trainrp' );
net.trainParam.epochs = 1500;
net.trainParam.goa l= 0.00001; %bp神经网络创建+初始化
[net,tr] = train(net , X1, Y1); %网络训练
Y2 =sim(net, X2); %仿真
figure;
[m(i),b(i), r(i)]=postreg(X2(i,:), Y2(i,:)); %线性回归+求相关系数图
net.trainParam.epochs = 1500;
net.trainParam.goa l= 0.00001; %bp神经网络创建+初始化
[net,tr] = train(net , X1, Y1); %网络训练
Y2 =sim(net, X2); %仿真
figure;
[m(i),b(i), r(i)]=postreg(X2(i,:), Y2(i,:)); %线性回归+求相关系数图
追问
因为Y1输入时是[-1 1 -1 1 1 1 1 -1 1 .....]这样的数据分类,-1是一种分类,1是一种分类,但是这里的Y2输出的不是,我需要输入的Y2也把X2相应分成两类,Y2的值也是类似于[-1 1 -1 -1......]这样的矩阵。能请教下这样怎么分吗?老师给了3个题目,不同的数据,因为第三题数据集是非线性的,想着用神经网络但是输出的结果怎么变成[-1 1 -1 -1......]的矩阵?谢谢。
追答
输出不是-1 和 1 也应该是 接近的吧 你四舍五入一下咯
展开全部
真搞笑!你连用什么算法识别都没有提出来,那么多算法你要用那种啊?你先对数据进行预处理,维数大的话降维,然后提取特征,最后用训练一个分类器。直接用matlab自带的SVM吧。这个分类器NB大了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这就是一个有监督学习的例子,如果这样,你就直接用Matlab的神经网络工具箱。有很完整的例子。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询