Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hadoop 带HiveQL的欧几里德距离_Hadoop_Hiveql - Fatal编程技术网

Hadoop 带HiveQL的欧几里德距离

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-

我在蜂巢上有一张桌子,结构如下:

传感器;温度压力 1.23;23 2.34;45 3.45;五十五

我想知道是否有可能用HiveQL UDF实现KNN algo。 目标是获得k=3的输出,例如一个如下表:

传感器;温度压力1传感器;第二传感器;第三传感器

谢谢你的帮助


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