MATLAB实现Kmean算法的newff函数教程

版权申诉
0 下载量 90 浏览量 更新于2024-10-31 收藏 1.37MB RAR 举报
资源摘要信息:"New folder_NEW_MATLABnewff函数_" 标题中提到了"NEW_MATLABnewff函数",这很可能是对MATLAB(矩阵实验室)中一个函数的命名,具体来说是newff函数。在MATLAB中,newff是神经网络工具箱中用来创建一个前馈神经网络的函数。尽管标题中存在一些不明确的字符(可能是文件名后缀),但从上下文可以推断出newff函数是用户想要了解的内容。而"Kmean"在描述中被提及,虽然它不是标题的一部分,但它代表了另一种常见的数据聚类算法——K均值算法。 在MATLAB中,newff函数是用于创建标准的前馈神经网络(feedforward neural network),这种网络通过调整权重和偏置来逼近一个函数。前馈神经网络是最常见和简单类型的神经网络,它按照输入、隐藏层(一个或多个)和输出层的顺序进行信号传递。newff函数允许用户指定网络的结构,例如输入和输出层的神经元数量,以及一个或多个隐藏层的大小和传递函数。 newff函数的基本调用格式如下: ```matlab net = newff(PR,[S1 S2 ... SN],{TF1 TF2 ... TFM},BTF,BLF,PF,IPF,OPF) ``` 其中,各个参数的含义如下: - PR:输入向量和目标向量的范围矩阵。 - [S1 S2 ... SN]:各层神经元的数量,其中S1对应于输入层后的第一个隐藏层,SN对应于输出层。 - {TF1 TF2 ... TFM}:各层的传递函数,例如 'tansig'(双曲正切S型传递函数)或 'logsig'(对数S型传递函数)。 - BTF:神经网络的训练函数,如 'trainlm'(Levenberg-Marquardt训练函数)。 - BLF:权值/偏差的学习函数。 - PF:性能函数,如 'sse'(平方和误差)。 - IPF:输入前处理函数。 - OPF:输出后处理函数。 例如,如果你想要创建一个具有20个神经元的隐藏层,以及一个具有10个神经元的输入层和一个输出层的简单前馈神经网络,可以使用newff函数进行如下定义: ```matlab net = newff([0 1; -1 1], [10 20 1], {'tansig' 'logsig' 'purelin'}, ... 'trainlm', 'learngdm', 'sse', 'mapminmax', 'mapminmax'); ``` 这个例子中的newff函数创建了一个网络,其中输入层有10个神经元,一个隐藏层有20个神经元,输出层有1个神经元,并且使用了训练函数 'trainlm' 和学习函数 'learngdm'。 使用newff函数所创建的网络可以用于各种应用,包括函数逼近、时间序列预测、分类和聚类等。但是值得注意的是,MATLAB的神经网络工具箱在2010a版本之后就不再推荐使用newff函数,因为该版本之后的MATLAB开始推荐使用新一代的网络创建和训练函数,如feedforwardnet、patternnet等。 关于"Kmean"的描述,它是指K均值聚类算法。这是一种无监督学习算法,用于将n个数据对象根据其属性分成k个簇,使得同一个簇中的对象之间的相似度较高,不同簇中的对象相似度较低。K均值算法通过迭代更新每个簇的中心点(即簇的均值)来最小化簇内的方差。 在MATLAB中,可以使用内置函数kmeans来执行K均值聚类。该函数的基本语法是: ```matlab idx = kmeans(X, k, Name, Value) ``` 这里,X是数据矩阵,k是要形成的簇的数量,idx是每个数据点所属簇的索引,Name和Value是可选参数,用于指定算法的执行细节,如迭代次数、初始簇中心等。 综上所述,文件的标题和描述反映了用户想要学习和了解的两个主题:一是MATLAB中创建前馈神经网络的newff函数,二是数据聚类中的K均值算法。虽然文件名称列表“New folder (2)”并未提供直接信息,但从上下文可以推测,这可能是一个文件夹名称,其中包含了相关的MATLAB代码示例或教程。
2019-08-12 上传
新版Matlab中神经网络训练函数Newff的详细讲解-新版Matlab中神经网络训练函数Newff的使用方法.doc 本帖最后由 小小2008鸟 于 2013-1-15 21:42 编辑 新版Matlab中神经网络训练函数Newff的详细讲解 一、   介绍新版newffSyntax·          net = newff],{TF1 TF2...TFNl}, BTF,BLF,PF,IPF,OPF,DDF) Descriptionnewff],{TF1 TF2...TFNl}, BTF,BLF,PF,IPF,OPF,DDF) takes several arguments PR x Q1 matrix of Q1 sample R-element input vectorsTSN x Q2 matrix of Q2 sample SN-element target vectorsSiSize of ith layer, for N-1 layers, default = [ ]. TFiTransfer function of ith layer. (Default = 'tansig' for hidden layers and 'purelin' for output layer.)BTFBackpropagation network training function BLFBackpropagation weight/bias learning function IPFRow cell array of input processing functions. OPFRow cell array of output processing functions. DDFData divison function ExamplesHere is a problem consisting of inputs P and targets T to be solved with a network.·          P = [0 1 2 3 4 5 6 7 8 9 10];T = [0 1 2 3 4 3 2 1 2 3 4];Here a network is created with one hidden layer of five neurons.·          net = newff;The network is simulated and its output plotted against the targets.·          Y = sim;plotThe network is trained for 50 epochs. Again the network's output is plotted.·          net.trainParam.epochs = 50;net = train;Y = sim; plot 二、   新版newff与旧版newff调用语法对比 Example1比如输入input(6*1000),输出output为(4*1000),那么旧版定义:net=newff,[14,4],{'tansig','purelin'},'trainlm');新版定义:net=newff; Example2比如输入input(6*1000),输出output为(4*1000),那么旧版定义:net=newff,[49,10,4],{'tansig','tansig','tansig'},'traingdx');新版定义:net=newff; 更详细请看word文档 新版Matlab中神经网络训练函数Newff的使用方法.doc