2016 - 2024

感恩一路有你

matlab神经网络算法实例 matlabSOM神经网络算法?

浏览量:2010 时间:2021-03-13 15:14:14 作者:admin

matlabSOM神经网络算法?

使用newsom函数创建网络:net=newsom(PR,[D1,D2,^],TFCN,DFCN,OLR,OSTEPS,TLR,TND)PR:R个输入元素的最大值和最小值的设定值,R*2维矩阵Di:第I层的维数,默认为[58]TFCN:拓扑函数,默认为hextopDFCN:距离函数,默认为linkdistOLR:分类阶段学习速率,默认为0.9OSTEPS:分类阶段的步长,默认为1000TLR:调谐阶段的学习速率,默认为0.02TNS:调谐阶段的领域距离,默认为1.例子:>> P=[rand(1,400)*2rand(1,400)]>> plot(P(1,:),P(2,:),".","markersize",20)>> net=newsom([0 10 1],[3 5])>> net=train(net,P)>> hold on>> plotsom(net.iw{1,1},net.layers{1}.distances)>> hold off第二个函数:newc函数功能:该函数用于创建一个竞争层net=newcnet=newc(PR,S,KLR,CLR)S:神经元的数目KLR:Kohonen学习速度,默认为0.01CLR:Conscience学习速度,默认为0.001net:函数返回值,一个新的竞争层。也可以参考附件的代码,里面有一个案例是SOM神经网络的。

既然使用神经网络也可以解决分类问题,那SVM、决策树这些算法还有什么意义呢?

要看你的数据量和样本数量,不同的样本数量和特征数据量适合采用的算法都不一样。神经网络等深度学习算法需要训练很大的数据集才能构建比较好的预测模型。很多互联网大公司比较喜欢深度学习算法是他们获得的用户数据都是数以亿计的海量数据,这是比较适合卷积神经网络等深度学习算法。

如果你的样本数量很少,比较合适的是使用SVM,决策树等机器学习算法,如果你的数据集比较大,可以考虑使用卷积神经网络等深度学习算法。

这有一个图,就是说明任何根据样本数量和数据集大小来选择机器学习算法的。




如果觉得对您有帮助,可以多多点赞哦,也可以随手点个关注哦,谢谢!

matlab神经网络算法实例 matlab是干嘛的 som算法详解

版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。