2011-12-03 13 views
5

मैं CRFSuite उपयोग करने के लिए कोशिश कर रहा हूँ, लेकिन मैं कैसे उदाहरण/ner.py उपयोग करने के लिए को समझ नहीं सकता औररनिंग CRFSuite उदाहरण

को सटीकता से pos.py, मैं कैसे फार्म की एक इनपुट कर सकता हूँ:

# Ner.py 
fields = 'y w pos chk' 

या

# Pos.py 
fields = 'w num cap sym p1 p2 p3 p4 s1 s2 s3 s4 y' 

"YW स्थिति" मैं उदाहरण के लिए, एक CoNNL मॉडल से प्राप्त कर सकते हैं, लेकिन pos.py में "जच" भाग और उन सभी क्षेत्रों मैं सच में नहीं मिलता है ।

इसके अलावा, क्या सीआरएफएसयूइट के साथ कच्चे पाठ (उन सभी टैग के बिना) को संसाधित करने का कोई तरीका है, क्योंकि मेरे पास एक प्रशिक्षित मॉडल है?

+0

मैं भी, इस मुद्दे को हल करने में दिलचस्पी है; विशेष रूप से, उद्धृत कोएनएलएल डेटा (2000 के लिए एनएनई के लिए 2003, लेकिन पीओएस के लिए क्या उपयोग करना है) से शुरू करना, मैं पीओएस डेटा कैसे उत्पन्न करूं? उद्धृत के रूप में, इनपुट को 'डब्ल्यू नंब कैप सीएम पी 1 पी 2 पी 3 पी 4 एस 1 एस 2 एस 3 एस 4 वाई' होना चाहिए, जिसका अर्थ है कि शब्द स्वयं पहले और पीओएस टैग आखिरी है। लेकिन बीच में सभी चीजें क्या हैं और इसे कैसे प्राप्त करें और कैसे उत्पन्न करें? – fnl

+0

शायद पीओएस भाग के बारे में सवाल अधिक सटीक होना चाहिए: इन स्क्रिप्ट का उपयोग करते हुए नियमित, पीओएस टैग की गई ओडब्लूपीएल फ़ाइल ('" शब्द टैग \ n "... ') से पीओएस टैगिंग इनपुट प्रारूप कैसे उत्पन्न होता है? – fnl

उत्तर

1

आप ट्यूटोरियल के लेखक द्वारा प्रदान किए गए डेटा के साथ ner.py या pos.py का उपयोग नहीं कर सकते हैं। आपको एक उचित CoNLL-2000 डेटा सेट की आवश्यकता है। :)

बस एक उदाहरण के रूप में, आप पा सकते हैं यह here

मुझे आशा है कि मैं सही ढंग से अपने प्रश्न का उत्तर दिया है।

+0

हां, तरह, लेकिन पीओएस टैगिंग के लिए सीआरएफएसयूइट इनपुट डेटा कैसे उत्पन्न करें? यानी, मूल डेटा सेट कहां है जिसका उपयोग प्रश्न में दिखाए गए फ़ील्ड के साथ पीओएस टेम्पलेट का उपयोग करके प्रशिक्षण/परीक्षण फाइलें उत्पन्न करने के लिए किया जाता है? (Ner.py फ़ाइल दिखाती है कि प्रत्येक फ़ील्ड वास्तव में क्या मतलब है (num, cap, sym, p1-4, और s1-4)।) – fnl

+0

CoNLL-2000 डेटा सेट (अंग्रेज़ी) प्राप्त करने के लिए: 'nltk आयात करें; train_sents = list (nltk.corpus.conll2000.iob_sents ('train.txt')); test_sents = list (nltk.corpus.conll2000.iob_sents ('test.txt')) ' –

2

@michele सही है। इस कार्य को एक और डेटासेट की आवश्यकता है। मेरा मानना ​​है कि डेटासेट यहां हैं: http://www.cnts.ua.ac.be/conll2003/ner/

0

यह पता चला कि यह pos.py फ़ाइल को थोड़ा सा संशोधित करना आसान है जो इसे करना चाहिए। अब pos.py के लिए इनपुट प्रारूप 'w y' है, जबकि 'num cap sym p1 p2 p3 p4 s1 s2 s3 s4' विशेषताएं सभी स्क्रिप्ट द्वारा उत्पन्न होती हैं। यह pos.py मुद्दों को हल करना चाहिए। यहाँ सार है: के रूप में पहले से ही @Legend से उत्तर दिया,

https://gist.github.com/fnl/21116fa57527946c5dbe

ner.py स्क्रिप्ट के लिए के रूप में, प्रासंगिक इनपुट डेटा प्रारूप, पाया जा सकता है उदाहरण के लिए, यहाँ के लिए:

http://www.cnts.ua.ac.be/conll2003/ner/

संबंधित मुद्दे