0
當前我正在研究數據挖掘,文本比較,並發現了這一個:https://en.wikipedia.org/wiki/Cosine_similarity。大數據集上的餘弦相似
由於我已經成功實現了這個算法來比較兩個字符串,我決定嘗試一些更復雜的任務來實現。 我重複了我的數據庫,其中包含大約250k文檔,並將DB中的一個隨機文檔與該數據庫中的整個文檔進行比較。
比較所有這些項目的時間:316.35898590088秒,即 - > 5分鐘比較所有250k文件!
由於這個結果出現了許多問題,我不想問一些建議。爲了清楚起見,我將首先描述一些可能有用的細節。
- 由於編程語言選擇PHP。
- 文檔存儲在MySQL中。
- 餘弦相似度函數的實現只包含這個函數,沒有停止詞和任何其他花哨的東西。
問題
- 有什麼辦法來實現一些更好的性能?我應該從哪裏開始,通過調整算法(即預先準備向量等),通過使用其他技術等?
- 如何以及在哪裏我應該存儲這些比較結果。例如,我想打印一些圖表,我可以通過相似性分數查看所有這些250k文檔,以便我可以識別哪些圖形最相似,等等。