基于MATLAB的机器学习

集群评价

聚类用于未标记数据,以找到自然的分组和模式。大多数聚类算法都需要研究人员事先了解聚类的数量。当此信息不可用时,可以使用集群评估技术来确定数据中基于指定度量的集群数量。这个例子识别了Fisher虹膜数据中的聚类。

加载数据

Fisher的虹膜数据包括对150个虹膜标本的萼片长度、萼片宽度、花瓣长度和花瓣宽度的测量。

清晰的负载fisheririsX =量;y =分类(物种);

从1到10评估多个集群,以找到最优集群

伊娃= evalclusters (X,“kmeans”“CalinskiHarabasz”“中”[1:10]);情节(eva) disp(类别(y)”)
警告:在复制1期间的迭代1中创建的空集群。“setosa”“癣”“virginica”

我们可以确认评价结果,因为我们事先知道有三个物种,因此有三个集群:Setosa, versicolor和virginica

用于可视化的降维

出于可视化的目的,您可以使用主成分分析来减少数据的维数。在这个例子中,我们将探索非负矩阵分解(除了减少特征的数量),如果预测器本身是非负的,它也保证特征是非负的。

因为我们没有一个特性是负面的,让我们使用nnmf来确认3%集群可视化xr = nnmf (X, 2);gscatter (xr (: 1) xr (:, 2), y)包含(第一列的) ylabel (第2列的传奇(类别(y))网格

数据集和引用

Fisher的虹膜数据包括对150个虹膜标本的萼片长度、萼片宽度、花瓣长度和花瓣宽度的测量。三个物种各有50个样本。此数据集随附统计和机器学习工具箱™