2017-10-19 162 views
1

的文檔相似性,我使用TF-IDF與餘弦相似度計算描述TF-IDF使用餘弦相似度幾乎類似的句子

輸入字符串:

3/4x1/2x3/4 blk mi tee 

下面是句子其中我需要找到類似的輸入字符串句子

 smith-cooper® 33rt1 reducing pipe tee 3/4 x 1/2 x 3/4 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 1 x 1/2 x 3/4 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 1-1/4 x 1 x 3/4 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 1-1/2 x 3/4 x 1-1/2 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 1-1/2 x 1-1/4 x 1 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 2 x 2 x 3/4 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 2 x 1-1/2 x 1-1/4 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 2-1/2 x 2 x 2 in npt 150 lb malleable iron black 
     smith-cooper® 33rt1 reducing pipe tee 3 x 3 x 2 in npt 150 lb malleable iron black 

由於刑期幾乎相同,我使用TF-IDF的做法,給低分單詞出現在所有文件(Idf)中,並給予獨特單詞更多的分數,這有助於更容易地找到相似的文檔。

有沒有比這更好的方法?

回答

1

當然還有其他一些方法,如潛在的語義分析,但最有效的方式完全取決於您的數據/語料庫。根據我的經驗,TF-IDF是一個很好的起點。更復雜的方法可能會比TF-IDF性能差,或者相對於其複雜性提供可忽略的改進。

某些使用TF-IDF進行實驗的是不同大小的n-gram和其他用於您的語料庫的預處理策略。根據你的例子,你可能不希望基於單詞邊界分裂來標記你的單詞;也許你想把這些句子成分當作一個單詞來考慮,例如3/4 x 1/2 x 3/4作爲一個單詞。我會首先嚐試不同大小的n-gram。

在你的例子中,除了度量/尺寸之外,句子是相同的。如果此樣本具有代表性,您可能需要更多考慮如何測量這些測量之間的距離。