我有一個函數需要兩個字符串,並給出顯示兩個文本之間關係的餘弦相似度值。加快文本比較(使用稀疏矩陣)
如果我想比較75個文本,我需要進行5,625個單獨比較,以便將所有文本相互比較。
有沒有辦法減少這種比較次數?例如稀疏矩陣或k-均值?
我不想談論我的功能或有關比較文本的方法。只是減少比較的數量。
我有一個函數需要兩個字符串,並給出顯示兩個文本之間關係的餘弦相似度值。加快文本比較(使用稀疏矩陣)
如果我想比較75個文本,我需要進行5,625個單獨比較,以便將所有文本相互比較。
有沒有辦法減少這種比較次數?例如稀疏矩陣或k-均值?
我不想談論我的功能或有關比較文本的方法。只是減少比較的數量。
本說這是真的,爲了得到更好的幫助,你需要告訴我們什麼是目標。
例如,一個可能的優化,如果你想找到類似的字符串被存儲在空間數據結構的串載體如四叉樹,在這裏你可以完全拋棄那些過於遠離彼此的載體,避免許多比較。
如果您的算法是成對的,那麼根據定義,您可能無法減少比較次數。
如果您想減少比較次數,您需要使用不同的算法,或者至少需要預處理輸入。
沒有你的功能細節,很難給出具體的幫助。
我的函數計算餘弦相似度。它需要兩個包含文本標記/詞彙的數組。我認爲你只能成對計算餘弦相似度,所以你不能減少餘弦相似度的比較次數,對吧? – caw 2009-09-21 19:43:39
是的,但如果你只對某些數據感興趣,你可能可以避免做一些比較,比如Vinko提到的類似字符串。 – 2009-09-21 19:49:15
是的,我想找到類似的字符串。更多細節在我對本的答案的評論中。我的數據庫(MySQL)似乎有這些空間類型:http://dev.mysql.com/doc/refman/5.0/en/mysql-spatial-datatypes.html Theres沒有關於四叉樹!? – caw 2009-09-21 19:46:12
多種空間索引可以很好地爲您服務。閱讀有關這些可用的MySQL形式。 – 2009-09-21 20:41:28
我讀了很多關於這些空間特徵的文章。我已經爲我的問題添加了一段關於它的內容。你能給我進一步的幫助嗎? – caw 2009-09-21 21:29:10