我正在尝试使用Spark的LinearRegressionWithSGD按国家和设备预测商品的价格。在查看了Spark MLLib的feature extraction section之后,我不清楚应该如何对功能进行哈希处理。记录示例为:

{"price": 3.37, "site_id" 12, "brand_id": 332, "brand_type": "axcssdsdac", "item_id": 36, "country": "US", "device": "mobile"}


我尝试了几种哈希技术(例如MurmurHash),但它们似乎都得到了垃圾权重(例如NAN,PositiveInfinity等)或权重趋于10 ^ 200 +。有没有人在Spark MLLib中成功标记哈希功能?

最佳答案

对国家/地区进行哈希处理可能会混淆无关的观察结果。您可能可以在设备上使用simhash,并可以在国家/地区使用精确比较(不区分大小写)。跨两个变量的散列方法可能适用于聚类,但不适用于回归。

为每个国家/地区创建单独的曲线,将simhash应用于移动设备可能会带来麻烦。

关于apache-spark - Spark线性回归特征哈希,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35712709/

10-12 17:47
查看更多