0
情景:百分比類似文本和承受程度
想象一個鍵值對象(字典),包含以下數據:
{
'www.example.com/':2,
'www.example.com/happy/':4
}
我從包含源接收值以下數據:
{
'www.example.com//':4
}
很明顯,www.example.com//與www.example.com/非常相似。我不想在我的字典中創建一個新條目,而是希望代碼根據文本相似性來查看我的字典中最接近的關鍵字,然後總結這些數字。因此,字典的最終狀態應該是這樣的:
{
'www.example.com/':6,
'www.example.com/happy/':4
}
求和部分是容易的,彈跳反對寬容是容易的,但挑戰性的部分是什麼利用作爲字典生長的最好的算法?
即難道我翻翻字典,每次都循環並檢查鍵(是這樣的:
for key in dictionary:
if tolerance > diff(key,collected_data):
dictionary[key] += collected_data[value]
break
)
但上面的例子中並沒有停止,直到找到最好的價值,這並不理想。
這真的是越來越自然語言處理的問題。有很多方法可以使用,但是一個經典的方法是將字符串分解成類似詞語的部分並利用諸如[tf-idf]之類的內容(https://en.wikipedia.org/wiki/Tf%E2%80%93idf )來確定相似度。 [NTLK](http://www.nltk.org/)在實際實施中可能很有用。 –
@GustavoBezerra NTLK有很大的潛力,感謝您分享它!我需要查看是否有URL /超鏈接領域的實際應用程序。 – Adib