Stu*_*PhD 3 matlab image machine-learning matrix
我甚至有点惭愧甚至问这个但是这里有.在每个Matlab帮助文件中,输入矩阵是一个NxD矩阵,XMatlab将矩阵排列描述为
数据,指定为数字矩阵.X行对应于观察,列对应于变量.
以上取自kmeans的帮助
我对Matlab对观察和变量的意义感到困惑.
假设我有一个由100个图像组成的数据矩阵.每个图像由大小的特征向量表示128 x 1.所以这里有100个我的观察和128个变量,还是反过来?
我的数据矩阵是大小128 x 100还是100 x 128
尤金在统计和概率构造中的解释很好,但我想从数据分析和图像处理的角度来解释它.
将观察视为数据集中的一个样本.在这种情况下,一个观察是一个图像.对于每个样本,它具有与之相关的一些维度或用于表示这样的样本的许多变量.
例如,如果我们有一组100个2D笛卡尔点,则观察量为100,而用于描述该点的维度或变量总数为2:我们有一个x点和一个y点.因此,在MATLAB世界中,我们将所有这些数据点放在一个矩阵中.矩阵的每一行表示数据集中的一个点.因此,您将在此处创建的矩阵是100 x 2.
现在,回到你的问题.我们有100个图像,每个图像可以用128个特征表示.这可疑地看起来您正在尝试使用SIFT或SURF来表示图像,因此请考虑这种情况,其中每个图像可以通过128维向量或具有128个元素的区间的直方图来描述.每个特征都是构成图像的维度构成的一部分.因此,你会有一个100 x 128矩阵.每行代表一个图像,其中每个图像表示为1 x 128特征向量.
通常,MATLAB的机器学习和数据分析算法假设您的矩阵是M x N,M组成数据集的点的总数,而数据集中N的一个这样的点的维数.在MATLAB的Universe中,观察总数等于数据集中的总点数,而表示一个样本的要素/不同属性的总数是变量的总数.
tl:dr