Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Stanford nlp 斯坦福大学的模型评估_Stanford Nlp - Fatal编程技术网

Stanford nlp 斯坦福大学的模型评估

Stanford nlp 斯坦福大学的模型评估,stanford-nlp,Stanford Nlp,我正在做一个来自斯坦福大学CoreNLP的NER模块的项目,目前我对模型的评估有一些问题 我正在使用API从java程序内部调用功能,而不是使用命令行参数。到目前为止,我已经成功地从多个培训文件(以制表符分隔的格式;2列带有标记和注释/答案)中培训了模型,并将其序列化为一个非常简单的文件 现在我正试图评估我在一些测试文件(精度、召回率、f1)上训练过的模型,我有点困在那里了。首先,测试文件应该采用什么格式?我假设它们应该与培训文件相同(以制表符分隔),这是合乎逻辑的。我已经阅读了JavaDoc文

我正在做一个来自斯坦福大学CoreNLP的NER模块的项目,目前我对模型的评估有一些问题

我正在使用API从java程序内部调用功能,而不是使用命令行参数。到目前为止,我已经成功地从多个培训文件(以制表符分隔的格式;2列带有标记和注释/答案)中培训了模型,并将其序列化为一个非常简单的文件

现在我正试图评估我在一些测试文件(精度、召回率、f1)上训练过的模型,我有点困在那里了。首先,测试文件应该采用什么格式?我假设它们应该与培训文件相同(以制表符分隔),这是合乎逻辑的。我已经阅读了JavaDoc文档,了解了如何使用
classify
方法,还查看了NERDemo.java。我已经设法使
classifyToString
方法起作用,但这对我的评估没有真正的帮助。我已经找到了
classifyAndWriteAnswers(字符串测试文件、文档读取器和写入器读取器、布尔输出分数)
方法,如果我将
outputScores
设置为true,我假设该方法会给出精度和召回分数

然而,我不能设法让这个工作。我应该使用哪个
DocumentReaderAndWriter
作为第二个参数

这就是我现在得到的:

public static void evaluate(CRFClassifier classifier, File testFile) {
        try {
            classifier.classifyAndWriteAnswers(testFile.getPath(), new PlainTextDocumentReaderAndWriter(), true);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
这就是我得到的:

Unchecked call to 'classifyAndWriteAnswers(String, DocumentReaderAndWriter<IN>, boolean)' as a member of raw type 'edu.stanford.nlp.ie.AbstractSequenceClassifier'
作为原始类型“edu.stanford.nlp.ie.AbstractSequenceClassifier”的成员,未选中对“classifyAndWriteAnswers(String,DocumentReaderAndWriter,boolean)”的调用
另外,我是将测试文件的路径作为第一个参数传递,还是将文件本身加载到字符串中?我们将非常感谢您的帮助