我正在使用斯坦福CRFClassifier,为了运行,它需要一个训练好的分类器模型文件。我已经将这个文件放在资源目录中。从CRFClassifier的Javadocshttp://nlp.stanford.edu/nlp/javadoc/javanlp/edu/stanford/nlp/ie/crf/CRFClassifier.html#getClassifier(java.lang.String)中可以看到,文件路径必须作为输入传递给CRFClassifier.getClassifier()方法,并且它是一个java.lang.String对象。所以我的问题是如何告诉.getClassifier()方法文件在资源目录中?也就是说,如何获取资源目录中文件的路径?
我已经尝试简单地:
我已经尝试简单地:
val classifier = CRFClassifier.getClassifier("./src/main/resources/my_model.ser.gz")
但是这会返回一个FileNotFoundException(文件未找到)错误。
我也尝试过
Source.fromURL(getClass.getResource("/my_model.ser.gz"))
该函数返回一个BufferedSource对象,但我不知道如何从中获取文件路径。
非常感谢任何帮助。
CRFClassifier.getClassifier(getClass.getResource("/split0-ner-model.ser.gz").getPath)
对你有用吗? - Volker Stampa