我的一位朋友有一個想法,即製作一個逐個顯示單詞的速度閱讀程序(與當前存在的速度閱讀程序非常相似)。但是,該程序會過濾出對意義完全不必要的單詞(如果您想要瀏覽某些內容)。確定相似兩個句子的算法
我已經開始實施這個程序,但我不太確定算法是什麼來擺脫「不重要」的話應該是。
我的想法是解析句子(我目前使用的是斯坦福分析器),並基於該單詞對每個單詞的句子含義的重要性來分配權重,然後開始移除具有最低權重的單詞。我會繼續這樣做,檢查原始樹和新樹的「不同」。我將繼續刪除重量最低的單詞,直到兩棵樹太差(我將通過每個用戶經歷一次的「校準」過程來確定一些常數)。最後,我會遍歷縮短的句子的每個單詞,並嘗試用該單詞的更簡單或更短的同義詞替換它(同時仍然試圖保留值)。
同樣,對於「the」,「a」,「of」等非常常見的詞語,也會有特殊情況。
例如:
「比利簡說, '你要出去嗎?'」
將成爲:
「比利告訴簡氏想出去嗎?'」
這將基本上保留句子的所有含義,但顯着縮短了它。
這是一個算法的好主意,如果是這樣,我將如何分配權重,我應該使用什麼樹比較算法,並在同一個好地方插入同義詞(即在我嘗試之前完成刪除任何單詞)?
你死心塌地從頭開始做這一切的還是你確定使用的庫如NLTK或gensim等? –
我肯定會打開使用其他庫如nltk –
有[this](http:// stackoverflow。com/questions/17022691/python-semantic-similarity-score-for-strings)和一個鏈接副本。 –