命令我們正在設計一個可以在這個格式處理不準確的自然語言字符串
command context
上下文是從約200元組的話,如列表中定義的接受命令的系統:
physical therapy
cardiac
physician visit
hospital inpatient
hospital outpatient
etc.
我們希望系統能夠糾正用戶錯誤,如拼寫錯誤,但也要理解「物理治療」與「物理治療師」相同,並且還要接受同義詞
最後,如果它不完全匹配,應該要求用戶的最佳匹配
這是我在想這樣做的之間的歧義:
- 幹上下文的單詞和傳入查詢都
- 刪除/從查詢
- 檢查隔離命令串並糾正任何字謎(不過:這隻佔地面積拼寫錯誤一類)
- 尋找一個確切的詞匹配
- 查找
這並不覺得自己是一個巧妙的解決辦法「接近的比賽」,特別是步驟3和5
什麼是更好/更簡單的方法來做到這一點?任何圖書館都可以在C#中做到這一點,獎金。
Lucene可以這樣做嗎?任何指導讚賞。
謝謝!
是的。 Soundex或Metaphone。 http://en.wikipedia.org/wiki/Metaphone – 2012-04-17 04:38:46