Java 如何使用openNLP检测日期
我想使用openNLP检测句子上的日期。使用id很容易,因为除了myslft提供的培训之外,还有一个现有的模型。有谁能指导我如何用java做这件事吗Java 如何使用openNLP检测日期,java,date,opennlp,sentence,Java,Date,Opennlp,Sentence,我想使用openNLP检测句子上的日期。使用id很容易,因为除了myslft提供的培训之外,还有一个现有的模型。有谁能指导我如何用java做这件事吗 首次从(英文版-en标签)下载日期名称查找器型号 同时下载标记器型号。因为名称查找器模型的输入应该是标记化的数组 将它们添加到项目文件夹或其他地方 加载两种型号 try { TokenizerModel model1 = new TokenizerModel(modelIn2); TokenNameFinderModel model2
- 首次从(英文版-en标签)下载日期名称查找器型号
- 同时下载
。因为名称查找器模型的输入应该是标记化的数组标记器型号
- 将它们添加到项目文件夹或其他地方
try {
TokenizerModel model1 = new TokenizerModel(modelIn2);
TokenNameFinderModel model2 = new TokenNameFinderModel(modelIn1);
}
catch (IOException e) {
e.printStackTrace();
}
finally {
if (modelIn1 != null) {
try {
modelIn1.close();
}
catch (IOException e) {
}
}
if (modelIn2 != null) {
try {
modelIn2.close();
}
catch (IOException e) {
}
}
}
String tokens[] = tokenizer.tokenize("An input sample sentence.");
Span nameSpans[] = nameFinder.find(tokens);
创建标记器模型和NameFindModel
try {
TokenizerModel model1 = new TokenizerModel(modelIn2);
TokenNameFinderModel model2 = new TokenNameFinderModel(modelIn1);
}
catch (IOException e) {
e.printStackTrace();
}
finally {
if (modelIn1 != null) {
try {
modelIn1.close();
}
catch (IOException e) {
}
}
if (modelIn2 != null) {
try {
modelIn2.close();
}
catch (IOException e) {
}
}
}
String tokens[] = tokenizer.tokenize("An input sample sentence.");
Span nameSpans[] = nameFinder.find(tokens);
然后加载TokenizerME和NameFinderME
Tokenizer tokenizer = new TokenizerME(model1);
NameFinderME nameFinder = new NameFinderME(model2);
然后从标记器模型获取标记
try {
TokenizerModel model1 = new TokenizerModel(modelIn2);
TokenNameFinderModel model2 = new TokenNameFinderModel(modelIn1);
}
catch (IOException e) {
e.printStackTrace();
}
finally {
if (modelIn1 != null) {
try {
modelIn1.close();
}
catch (IOException e) {
}
}
if (modelIn2 != null) {
try {
modelIn2.close();
}
catch (IOException e) {
}
}
}
String tokens[] = tokenizer.tokenize("An input sample sentence.");
Span nameSpans[] = nameFinder.find(tokens);
然后将此令牌数组作为参数发送给namefinder model
try {
TokenizerModel model1 = new TokenizerModel(modelIn2);
TokenNameFinderModel model2 = new TokenNameFinderModel(modelIn1);
}
catch (IOException e) {
e.printStackTrace();
}
finally {
if (modelIn1 != null) {
try {
modelIn1.close();
}
catch (IOException e) {
}
}
if (modelIn2 != null) {
try {
modelIn2.close();
}
catch (IOException e) {
}
}
}
String tokens[] = tokenizer.tokenize("An input sample sentence.");
Span nameSpans[] = nameFinder.find(tokens);
这将把它转换为字符串形式的预测日期数组
String[] array=Span.spansToStrings(nameSpans,tokens);