我使用了幾個NER工具來提取出現在語料庫中的命名實體,我想使用NLTK Python模塊測試它們的準確性。如何計算NER系統的準確性?
一些我所使用的工具有:
NTLK
MeaningCloud:https://www.meaningcloud.com/products/topics-extraction
爲了獲得系統的準確性,NLTK的accuracy
函數有兩個參數:正確註釋的數據集(包含語料庫中的所有記號及其分類(PERSON,LOCATION,ORGANIZATION或'O'[表示該記號不是命名實體])和輸出NER系統。
當NER返回所有令牌的分類列表時,這是可以的。但是,某些工具(如MeaningCloud)僅返回語料庫中識別的指定實體的分類。這使得無法獲得準確性(爲了獲得它,應該返回完整的單詞列表以便兩個註釋之間的比較是可行的)。
那麼這裏的方法是什麼呢?我能做些什麼才能在這種情況下獲得準確性?