使用SVM的全部目的是该算法将能够确定输入是真还是假等。

我正在尝试使用SVM进行预测性维护,以预测系统过热的可能性。

在我的示例中,范围为0-102°C,如果温度达到80°C或更高,则归为故障。

我的输入是30个双精度数组(最后30个读数)。

我正在输入一些样本来训练SVM,但我想知道是否传递良好的数据来训练SVM是否是一种好习惯-例如,在80°C,81°C ... 102°C的数组中传递,以使模型会自动将这些值与失败相关联。您也可以做一个30 x 79°C的阵列并将其设置为通过。

这似乎是一种完整的方法,尽管如果您输入这样的数组-它将与硬编码switch语句以在温度读取80-> 102°C时触发的语句不同。

传递这些“硬编码”样式数组是一个好主意,还是我应该坚持使用更多随机输入?

最佳答案

如果存在有限的可能性,我真的建议您使用朴素贝叶斯,因为该方法将完全适合此问题。但是,如果您被迫使用SVM,那将是相当困难的。对于初学者来说,使用SVM的主要思想是将其用于分类,而方案的数量实际上并不重要。但是输入很少是离散的,因此我想通常会有无限的情况。但是,通常实现的SVM只会给您一个分类,除非您有100个类,一个为1%,另一个为2%,这并不能真正解决问题。

结论是这可能有效,但是不会被视为“最佳实践”。您可以想象将30维向量空间划分为100个小子空间,每个数据点30x1向量是该向量空间中的一个点,因此概率由其100个子集中的哪一个决定。但是,具有100个类别和不太干净或数据不足,将导致非常糟糕的性能模型。

干杯:)

10-08 08:49