上述实验用CCA方法将图像和音频数据集所对应的特征向量都映射到一个同构的子空间中。那么,图像和音频样本就可以用子空间中的坐标表示,也就是说,图像和音频可以当做子空间中的数据点。那么,这两种不同类型的数据集在子空间中是如何分布的呢?是集中分布在一起,还是各自占据一部分空间?更进一步地,图像数据集中不同语义类别的数据在子空间中又形成了如何的拓扑结构呢?这些都会对上层的检索应用产生直接影响。
1.实验步骤
本节介绍一组扩展实验,对子空间中的图像和音频数据集进行聚类,从而发现数据集的拓扑结构。实验步骤主要包括:
(1)以CCA变换后的矩阵L和M为输入条件,计算图像和音频在子空间中的欧氏距离,分别得到距离矩阵DI,DA。
(2)考虑到传统的KMeans聚类方法在进行聚类时,对初始聚类质心的选择比较敏感,不同的初始条件可能会得到差别较大的聚类结果。因此,采用AP(Affinity Propagation)聚类方法,根据距离矩阵DI,DA的值,分别对子空间中图像、音频对应的数据点进行聚类。
AP方法的主要思想是:将待检测的特征向量看成网络结构中的节点,递归地在该网络的节点之间传递实数值的消息,直到找到一组聚类中心,使得消息传递过程达到收敛。传递的消息包括“责任度(Responsibility)”,用r(i,k)表示,以及“可用性(Availability)”,用a(i,k)表示。具体地,r(i,k)表示节点k可以成为节点i的聚类中心的累积概率,a(i,k)表示节点i选择节点k作为其聚类中心的累积概率,可以用图6-3表示。
图6-3 两种消息的传递机制
图6-3中的圆圈表示CCA变换后得到的子空间中,代表图像样本的视觉特征向量,消息r(i,k)由节点i传向候选的聚类中心k,表示与其他候选聚类中心k'相比,节点k能成为聚类中心的概率;a(i,k)从候选聚类中心k传向其他节点i,表示节点k成为节点i的聚类中心的概率。消息r(i,k)和a(i,k)的计算过程相互迭代,形式化描述如下所示:
(www.xing528.com)
在迭代之前,消息a(i,k)的初始值被设置为零,第一轮迭代后,消息r(i,k)的计算结果被代入到a(i,k)的计算公式中,然后就可以迭代地更新的a(i,k)和r(i,k)的值,直到两次迭代之间的差值小于预定阈值为止。这个过程就是AP聚类,其Matlab代码可以从http://www.psi.toronto.edu/下载,本书附录部分也给出了AP算法的完整代码。
2.性能评价
在聚类结果中,若某幅图像被划分到了“老虎”类别,且这幅图像本身就是一幅老虎的照片,则称之为“正确标识的图像”。由此,可以用如下式所示的I_Accuracy和A_Accuracy来衡量图像聚类性能和音频聚类性能:
众所周知,在聚类实验中样本类别的多少对聚类结果有较大的影响,例如:采用相同的算法,对“老虎”和“爆炸”两个类别的数据进行聚类,与对“老虎”“爆炸”“汽车”“闪电”等十个类别的数据进行聚类,显然聚类结果的准确率不同。因此,实验中可以选取不同组训练样本进行聚类,设从z个语义类别中分别选择图像和音频,按照上述步骤进行聚类,并计算聚类准确率I_Accuracy和A_Accuracy的值,z的取值范围为[2,10]的整数。图6-4和图6-5分别是图像和音频的聚类结果统计。
图6-4 图像和音频的聚类结果
图6-5是类的个数z取值为5时,得到的一些图像聚类结果的例子,可以看到相同语义的图像较好地被聚到相同的类中。
图6-5 图像聚类结果举例
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。