Stanford_NLP_TOOLS:CRFClassifier
public?class?CRFClassifier<IN?extends?CoreMap>
extends?AbstractSequenceClassifier<IN>
使用CRF模型進行層序劃分的類。這個類具有處理不同格式文檔的功能,但是當使用標準ColumnDocumentReaderAndWriter?類用來訓練或者測試模型時,輸入文件中要一行一個token(幾列標志性的東西,比如單詞、POS、chunk和answer?class)。ColumnDocumentReaderAndWriter?默認訓練集是有3列輸入的,分別是:單詞、pos、gold?class,但是這個可以通過map屬性來指定。
當使用-textFile命令在一個文件上運行的時候,文件要是普通英文文本(或者簡單的html/xml),通過PlainTextDocumentReaderAndWriter可以進行做一下簡單的英文標記測試。用來讀取文本的類可以通過?-plainTextDocumentReaderAndWriter來改變。-tokenizeOptions?標記提供了一些其他的標記器選項。
To?read?from?stdin,?use?the?flag?-readStdin.?The?same?reader/writer?will?be?used?as?for?-textFile.
要從標準輸入讀取文本的話,就是用-readStdin。至于-textFile,也可以使用同樣的reader/writer。
典型命令行使用:
為了將一個(含有(提供好的序列化的分類器)的訓練好的模型)在文本文件上運行:
java?-mx500m?edu.stanford.nlp.ie.crf.CRFClassifier?-loadClassifier?conll.ner.gz?-textFile?samplesentences.txt
在一個屬性文件(訓練、測試、運行時)中指定全部參數:
java?-mx1g?edu.stanford.nlp.ie.crf.CRFClassifier?-prop?propFile
To?train?and?test?a?simple?NER?model?from?the?command?line:
通過命令行訓練和測試一個簡單的NER(命名實體識別)模型:
java?-mx1000m?edu.stanford.nlp.ie.crf.CRFClassifier?-trainFile?trainFile?-testFile?testFile?-macro?>?output
用多個文件進行訓練:
java?-mx1000m?edu.stanford.nlp.ie.crf.CRFClassifier?-trainFileList?file1,file2,...?-testFile?testFile?-macro?>?output
使用-testFiles選項和逗號分割的列表來進行多文件測試。
各種特征值通過FeatureFactory來定義。默認使用的是NERFeatureFactory,你可以查看特征值模版和在訓練NER分類器中需要使用的特征值的屬性或標記。還有一個edu.stanford.nlp.wordseg.SighanFeatureFactory,以及各種繼承者,例如用來進行中文分詞的ChineseSegmenterFeatureFactory。特征值可以通過Properties文件(推薦)或者命令行的標記來指定。各種標記被讀入到一個SeqClassifierFlags?對象,除非用戶想添加新的特征,否則用戶不用關注它。
????CRFClassifier也可以在程序中使用,當新建一個實例的時候,你一定要指定Properties對象。然后你要調用訓練函數來訓練分類器或者加載一個分類器。另一種得到CRFClassifier的方法就是通過靜態函數getClassifier(String)來返回一個反序列化的分類器。之后你可能就會標注文檔,可以使用合適的classify()或者AbstractSequenceClassifier中合適的classify函數。可以通過printProbsDocument()或getCliqueTrees()?詢問CRF給定的概率。
本文轉自ZH奶酪博客園博客,原文鏈接:http://www.cnblogs.com/CheeseZH/archive/2012/11/29/2794280.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的Stanford_NLP_TOOLS:CRFClassifier的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Swift教程之继承
- 下一篇: python基础:字典的使用