0

我试图使用 Weka 的 NaiveBayesUpdateable 分类器。我的数据包含名义属性和数字属性:

  @relation cars
  @attribute country {FR, UK, ...}
  @attribute city {London, Paris, ...}
  @attribute car_make {Toyota, BMW, ...}
  @attribute price numeric   %% car price 
  @attribute sales numeric   %% number of cars sold

我需要根据其他属性预测销售数量(数字!)。

我知道我不能在 Weka 中使用数字属性进行贝叶斯分类。一种技术是将数值属性的值拆分为长度为 k 的 N 个区间,并使用名义属性代替,其中 n 是类名,如下所示:@attribute class {1,2,3,...N}。

然而,我需要预测的数字属性范围从 0 到 1 000 000。创建 1 000 000 个类根本没有意义。如何使用 Weka 预测数字属性,或者在 Weka 没有用于此任务的工具的情况下寻找什么算法?

4

2 回答 2

0

这根本不是分类问题。您应该为此使用回归模型,例如LinearRegression.

于 2013-04-25T23:23:26.093 回答
0

正如@larsmans 提到的,这不是分类,而是回归模型。问题是回归仅适用于数字数据。分类数据的标准方法是使用所谓的虚拟变量。每个虚拟变量代表分类变量的一种状态,为 1 或 0。因此,您的属性列表可能会更改为以下内容:

@relation cars
@attribute country_FR
@attribute country_UK
...
@attribute city_London
@attribute city_Paris
...

例如,如果城市是伦敦,则变量city_London将设置为 1,而所有其他city_*变量将设置为 0。

于 2013-04-25T23:43:04.263 回答