2014-01-07 41 views
2

對於包含公司名稱的文本,我想培訓一個自動標記承包商(執行任務的公司)和委託人(聘用承包商的公司)的模型。命名實體識別:如何標記訓練集並選擇算法?

的例句是:

花公司聘請大的顧問認爲制定外包戰略。

花公司作爲本金和大想想作爲承包商。

我的第一個問題:是否足夠標記我的訓練集中的校長和承包商,還是更好地另外使用POS標記?

換句話說,無論是

花/主要Inc./PRINCIPAL僱用/ NN的/ NN顧問/ NN的/ NN大/承包商想想/承包商/ NN開發/ NN AN/NN外包/ NN戰略/ NN ./。

花/主要Inc./PRINCIPAL僱用/ VBZ的/ DT顧問/ NNS/IN大/承包商想想/承包商/開發/ VB的/ DT外包/ NN戰略/ NN ./。

第二個問題:一旦我有了我的訓練集,nltk-package的哪個或哪些算法是最有前途的? N-Gram Tagger,Brill Tagger,TnT Tagger,Maxent分類器,樸素貝葉斯,...?或者我在這裏完全走錯了路?

我是NLP的新手,我只是想徵詢一下建議,然後再投入大量時間來標記我的訓練集。而我的文字是德文,這可能會增加一些困難......感謝您的任何建議!

回答

1
  1. 您不需要手動設置POS標籤。 POS標記器會爲你做。
  2. 請參閱this question用於POS標籤德語。
2

我建議你不要合併命名實體和POS信息。大多數工作表明,POS(或其他形態和/或大寫特徵)對檢測命名實體很有價值。正如你可以很放心地使用自動POS惡搞(除非您處理嘈雜文本),你可能會喜歡的東西最終會:

Blossom/NNP/PRINCIPAL Inc./NNP/PRINCIPAL hires/VBZ/O the/DT/O consultants/NNS/O of/IN/O Big/NNP/CONTRACTOR Think/NNP/CONTRACTOR to/TO/O develop/VB/O an/DT/O outsourcing/NN/O strategy/NN/O ./. 

其中POS水平將同時可以手動標註本金和承包商自動標記。另請注意,大多數人使用BIO format來標記命名實體。

請記住,承認組織通常很難 - 至少比人和地點更難。除非您有預定義的組織列表,否則需要大型詞典。Intuitivelly,我想你可以在將您的任務:

  1. 使用NER惡搞
  2. 注入額外處理(圖/語法/語義)
  3. 實現一個認識和濾波組織(ORG),例如第二個模型,將相關ORG轉換爲PRINCIPAL或CONTRACTOR
+0

'大部分作品都顯示出來 - 聽起來很蓬鬆,而且我知道事實並非如此。更不用說你暗示POS是一種形態特徵,而且大寫字母與POS相比,這兩者都不是真的。 –

+0

看看有關NER/POS的http://l2r.cs.uiuc.edu/~danr/Papers/RatinovRo09.pdf。另外,我並不是說POS是一種形態特徵,但是對於NER來說,如果你不使用POS(它給你NNP),你將不得不使用一些形態特徵或至少大寫字母。 – eldams

+0

該文章將POS顯示爲可能使用的功能的示例。說需要POS標籤是非常不同的。同樣,標準的POS標籤(特別是NLTK中的標籤)在新文本中的準確度通常僅爲60-70%,因此在其上構建NER就像在沙灘上建造城堡一樣。另外你的第二點是說:如果你不使用這個功能,你必須使用其他功能。 Conll(最普遍的NER語料庫)不包含POS,這使得這是一個相當有爭議的問題。 –

0

命名實體識別(Stanford)足以解決您的問題。

使用POS標記不會幫助您解決問題。

用於生成NER模型的足夠數量的訓練數據將爲您提供良好的結果。

如果您使用斯坦福NER,那麼它使用CRF分類器和算法。

相關問題