我有一個項目,使用戶能夠使用Elasticsearch搜索POI,並且它們可以通過許多不同的屬性(包括位置)進行過濾。我想爲所有的過濾器添加分面,其中大部分是分面變量,這些分面是完美的。不過,我也希望用戶能夠通過位置/城市/城市區域來面向。每個位置都是經緯度/長度對。Elasticsearch中的地理定位(集羣)
從我的研究中,似乎最好的方法是使用經緯度對的k均值聚類來獲取最常見的分面位置分組。一旦我有了這些分組,我想爲該地區提供最常見的名稱(例如,即使「布魯克林」是集羣的中心,我想提供名稱「紐約市」)。 (a)在Elasticsearch中可以進行地理聚類(k-means,或其他任何方式),以允許按位置分面?如果是這樣,怎麼樣?如果沒有,這可以在Postgres中完成嗎? (b)如何確保我爲聚類返回的任何給定地區提供最廣泛認可的政治名稱?
都不擅長羣集。 K-means也是一個相當差的選擇。 (你如何設置K,並防止它穿過布魯克林?) –
@ Anony-Mousse,顯然我不是這方面的專家。你會推薦什麼方法? – jdotjdot