2013-11-22 64 views
0

我們的網站允許用戶以自由格式文本輸入他們工作的公司。 從歷史上看,我們收集了幾百萬個獨特的條目。由於我們沒有受到任何約束,因此我們得到了很多變體,錯別字(如麥當勞超過1000個不同的條目)如何分類大量用戶輸入的公司名稱?

我們意識到只要我們能夠將這些變體聯繫在一起,我們就能爲用戶提供一個很棒的功能。我們使用各種在線資源編制了一份乾淨清單的公司作爲出發點[字典]

現在,我們正試圖找出處理用戶數據源的最佳方法。我們認爲,有關分配一定的相似性得分: - 用[解釋]每個條目進行比較,計算詞彙的距離(可能在Hadoop的工作) - 採取一些搜索數據庫的優勢(如SOLR)是

和準用戶輸入文本這條路。

我們想知道的是有沒有人經歷類似的「分類」練習,並可以分享任何提示?

感謝, 彼得

+0

這是SO的主題,但您可以在您最喜愛的搜索引擎中查找記錄鏈接文獻。 –

+0

謝謝@ThomasJungblut會檢查出來。你能想到任何其他論壇,這個問題是相關的,可能會得到答案嗎? – Piotr

+0

我還沒有讀過它,但根據評論,最近的Jolt獎書「Taming Text」可能值得一讀關於模糊文本匹配的想法 - http://www.manning.com/ingersoll/ –

回答

1

我會用簡單的Levenshtein距離http://en.wikipedia.org/wiki/Levenshtein_distance)。

幾百萬條目 - 您應該可以在一臺計算機上輕鬆處理它(不需要hadoop或其他重量級工具)。

+0

Levenshtein距離是一個開始的好地方,但僅憑這一點還不足以做好工作。例如,想想看,「禮儀」顯然是普遍的拼寫錯誤「edicit」。 L.距離對於這樣的事情並不是很有幫助。 –

+0

是的,我同意,仍然沒有人類智能與人類相同 - 每種技術都有一些缺點......正如你所寫:這是一個開始的好地方。 – xhudik

相關問題