0

我正試圖計算由entity_id,type_of_order,total_value描述的n個實體之間的相似度。n個實體之間的計算相似度

的數據的一個例子可能是這樣的:

NR entity_id type_of_order total_value 
1 1   A   10 
2 1   B   90 
3 1   C   70 
4 2   B   20 
5 2   C   40 
6 3   A   10 
7 3   B   50 
8 3   C   20 
9 4   B   50 
10 4   C   80 

我的問題是什麼是衡量ENTITY_ID 1和2的例子之間的相似性與問候到type_of_order和total_value爲的神路訂單類型。

簡單的KNN會給出滿意的結果還是應該考慮其他算法?

任何建議將不勝感激。

+0

什麼距離函數最好使用真的取決於應用程序。嘗試一下,看看哪個給你最好的結果。常見的包括L1和L2規範。您必須先將type_of_order映射到數字。 KNN是一種分類方案,而不是一個指標,所以我不知道如何使用它。或者我誤解了這個問題。 – Lidae

回答

0

相對於數據語義和訓練的目的,相似性度量是一種啓發式來捕獲兩個數據行之間的關係。我們不知道你的數據;我們不知道你的用法。當我們不知道我們正在解決什麼問題時,建議度量來解決問題是不負責任的。

您必須將此問題提交給您在鏡子中找到的人。你已經給了我們三個功能,不知道它們的含義或它們如何相關。你需要量化...特點內

  1. 相對距離:type_of_order下,什麼是任意兩個測量值之間的關係(距離)?如果我們任意指定d(A,B)= 1,那麼d(B,C)是什麼? 我們沒有任何信息可以幫助你構建這個。此外,如果我們給出某個值c,那麼d(A,C)是什麼?在各種常用指標中,它可以是1 + c,| 1-c |,所有距離可以是1,或者也可以是其他值 - 在某些應用程序中甚至可以超過1 + c。即使在最後一列中,我們也不能假設d(10,20)= d(40,50);我們不能假設d(10,20)= d(40,50)。實際的差異可能是一個比率,正方形的差異等。同樣,這取決於這些標籤背後的語義。

  2. 特徵之間的相對權重:各個列中的差異如何組合以提供相似性?例如,d([A,10],[B,20])如何與d([A,10],[C,30])進行比較?這是左欄中的兩個字母,右欄中的兩個10。 ([A,10],[A,20])與d([A,10],[B,10])如何?距離是線性的,還是當我們滑動字母表或更高數字時,關係發生變化?

相關問題