具有特征向量和类矩阵的分类器

时间:2013-06-01 22:54:58

标签: matlab classification

我是分类新手,所以我想就如何开始提出一些建议。

我创建了一个Matlab脚本,它创建了两个矩阵,一个是类标识符,意思是100x1,它包含数据所在的组。第一组(1)或第二组(2)。

第二个矩阵包含功能100x40,每个点有40个功能。

什么是最好的开始方式,我真的输了。 Matlab有一些我可以使用的功能吗?

我真的很感激一些帮助。

谢谢。

1 个答案:

答案 0 :(得分:2)

这取决于您使用的MATLAB版本,但最好的出发点是查看用于监督学习的统计工具箱。以下是MATLAB 2013a的一些启动技巧:

http://www.mathworks.co.uk/help/stats/supervised-learning.html

我们假设您的数据是

classes: 100x1
features: 100x40

对于每种方法,第一行显示如何拟合分类模型,第二行显示如何对要素中的第一行数据进行分类。

统计工具箱

朴素贝叶斯分类

维基百科:https://en.wikipedia.org/wiki/Naive_Bayes_classifier

myClassifier = NaiveBayes.fit(features, classes)
myClassifier.predict(features(1,:))

最近邻居

维基百科:https://en.wikipedia.org/wiki/Nearest_neighbour_classifiers

myClassifier = ClassificationKNN.fit(features, classes)
myClassifier.predict(features(1,:))

分类树

维基百科:https://en.wikipedia.org/wiki/Classification_tree

myClassifier = ClassificationTree.fit(features, classes)
myClassifier.predict(features(1,:))

支持向量机

维基百科:https://en.wikipedia.org/wiki/Support_vector_machine

请注意,支持向量机从Bioinformatics工具箱迁移到2013a,它只支持分为两组。

myClassifier = svmtrain(features, classes)
svmclassify(myClassifier, features(1,:))

判别分析

维基百科:https://en.wikipedia.org/wiki/Discriminant_analysis

myClassifier = ClassificationDiscriminant.fit(features, classes)
myClassifier.predict(features(1,:))

神经网络工具箱:

如果您只有两个类,则可以通过键入nnstart

使用神经网络工具箱进行模式识别