Hadoop 带HiveQL的欧几里德距离
我在蜂巢上有一张桌子,结构如下: 传感器;温度压力 1.23;23 2.34;45 3.45;五十五 我想知道是否有可能用HiveQL UDF实现KNN algo。 目标是获得k=3的输出,例如一个如下表: 传感器;温度压力1传感器;第二传感器;第三传感器 谢谢你的帮助Hadoop 带HiveQL的欧几里德距离,hadoop,hiveql,Hadoop,Hiveql,我在蜂巢上有一张桌子,结构如下: 传感器;温度压力 1.23;23 2.34;45 3.45;五十五 我想知道是否有可能用HiveQL UDF实现KNN algo。 目标是获得k=3的输出,例如一个如下表: 传感器;温度压力1传感器;第二传感器;第三传感器 谢谢你的帮助 Soufs我假设您正在寻找免费的开源软件 有HIVEmall,但目前不支持欧几里得距离: 但是,它支持多个距离度量。自Hivemall v0.3.2-3以来,支持欧几里德距离/欧几里德相似性函数 您可以使用各种相似性函数执行k-
Soufs我假设您正在寻找免费的开源软件 有HIVEmall,但目前不支持欧几里得距离: 但是,它支持多个距离度量。自Hivemall v0.3.2-3以来,支持欧几里德距离/欧几里德相似性函数 您可以使用各种相似性函数执行k-NN:余弦相似性、jaccard相似性、角度相似性和欧几里得相似性,如下所示: select l.rowid, euclid_distance(l.features, r.features) as distance from mytable l LEFT OUTER JOIN mytable r 输入格式将以字符串数组作为特征 您需要一个自联接,如下所示: select l.rowid, euclid_distance(l.features, r.features) as distance from mytable l LEFT OUTER JOIN mytable r 注意:为了高效的top-k相似性列表,您可以按如下方式使用每个函数: select l.rowid, euclid_distance(l.features, r.features) as distance from mytable l LEFT OUTER JOIN mytable r