通过高维标称属性预测数值属性

Predicting a numeric attribute through high dimensional nominal attributes

我在挖掘关于物流运输的大型(10 万个条目)数据集时遇到困难。我有大约 10 个标称字符串属性(即 city/region/country 名称、customers/vessel 标识代码等)。除此之外,我还有一个日期属性 "departure" 和一个比例缩放数字属性 "goal".

我想做的是使用训练集找出哪些属性与 "goal" 有很强的相关性,然后通过预测测试中条目的 "goal" 值来验证这些模式设置。

我认为聚类、分类和神经网络可能对这个问题有用,所以我使用了 RapidMinerKnimeelki 并尝试将他们的一些工具应用于我的数据。然而,大多数这些工具只能处理数字数据,所以我没有得到有用的结果。

是否可以将我的名义属性转换为数字属性?或者我是否需要找到可以实际处理标称数据的不同算法?

您很可能想使用基于树的算法。这些很适合使用标称特征。请注意,您不想使用 "id-like" 属性。

我会推荐 RapidMiner 的 AutoModel 功能作为开始。 GBT 和 RandomForest 应该运行良好。

最好的, 马丁

标称属性的处理不依赖于工具。你使用什么算法是个问题。例如,具有欧氏距离的 k-means 无法处理字符串值。但是其他距离函数可以处理它们并且算法可以处理它们,例如 RapidMiner

的随机森林实现

您当然也可以将标称属性转换为数值,例如通过使用二进制虚拟编码或分配唯一的整数值(这可能会导致一些偏差)。在 RapidMiner 中,你有 Nominal to Numerical 运算符。

根据标称值的分布,处理稀有值可能也很有用。您可以将它们组合在一个新类别中(例如 "other"),或者在应用虚拟编码后使用特征选择算法。

查看示例 RapidMiner 进程的屏幕截图(它使用 Operator Toolbox 扩展中的 Replace Rare Values 运算符)。

编辑: Martin 也是对的,AutoModel 将是检查有问题的属性并找到拟合算法的良好开端。