0

这是我的第一个机器学习练习,我想使用 LIBLINEAR 来训练一些数据。我工作过的训练数据存储为大小为m x m x n的多维矩阵,其中有 m x m 矩阵的 n 个实例,m x m矩阵每个单元格都包含一个介于 1-255 之间的值来表示像素值。

该数据包含一个n x1 标签向量。但是,尝试使用 LIBLINEAR 函数 train(training_labels, sparse(training_data)) 会产生错误。我认为这是因为 training_data 是一个 3d 矩阵。我错过或不理解哪些步骤?我假设因为 training_labels 是n x1,所以 training_labels 向量中的每个值都映射到一个m x m数据矩阵。不是这样吗?

谢谢!

4

1 回答 1

0

是的,一个 mxm 数组是一个特征向量,但它具有矩阵的形式。liblinear 可能无法处理这个问题。正如评论中所写,您必须更改数据格式。如果 A 是您的 3d 数组,则

reshape(A, m * m, n)

给你一个 m² 行和 n 列的二维矩阵。

于 2015-01-30T01:55:16.490 回答