目前我正在使用OpenNLP工具对PoS标记德语句子,其下载网站上列出了maxent模型:
de POS Tagger Maxent model trained on tiger corpus. de-pos-maxent.bin
这非常有效,我得到的结果如下:
Diese, Community, bietet, Teilnehmern, der, Veranstaltungen, die, Möglichkeit ... PDAT, FM, VVFIN, NN, ART, NN, ART, NN ...
使用标记的句子,我想进行一些进一步的处理,我必须知道单个标签的含义.不幸的是,在OpenNLP-Wiki中搜索标签集并不是很有帮助,因为它说:
TODO: Add more tag sets, also for non-english languages
有谁知道我在哪里可以找到德国maxent模型中使用的标签集?
我想查询是否有可能在R包openNLP中提取名词+名词或(adj |名词)+名词?也就是说,我想用语言过滤来提取候选名词短语.你能指导我怎么办?非常感谢.
谢谢你的回复.这是代码:
library("openNLP")
acq <- "Gulf Applied Technologies Inc said it sold its subsidiaries engaged in
pipeline and terminal operations for 12.2 mln dlrs. The company said
the sale is subject to certain post closing adjustments,
which it did not explain. Reuter."
acqTag <- tagPOS(acq)
acqTagSplit = strsplit(acqTag," ")
acqTagSplit
qq = 0
tag = 0
for (i in 1:length(acqTagSplit[[1]])){
qq[i] <-strsplit(acqTagSplit[[1]][i],'/')
tag[i] = qq[i][[1]][2]
}
index = 0
k = 0
for (i in 1:(length(acqTagSplit[[1]])-1)) {
if ((tag[i] …
Run Code Online (Sandbox Code Playgroud) 我试图解析大量文本中的句子.使用java我开始使用OpenPLP和Stanford的Parser等NLP工具.
但这里是我被卡住的地方.虽然这两种解析器都非常棒,但它们在非统一文本方面却失败了.
例如,在我的文本中,大多数句子都是以句点分隔的,但在某些情况下,例如子弹点则不是.这两个解析都失败了.
我甚至尝试在stanford解析中为多个句子终结符设置选项,但输出并没有好多少!
有任何想法吗??
编辑:为了使它更简单,我希望解析文本,其中分隔符是新行("\n")或句点(".")...
我想使用opennlp Java库将自然语言问题转换为SQL查询,即
谁在索契获得女子花样滑冰?
应转换为
select name from winners where event='skating_woman'
Run Code Online (Sandbox Code Playgroud)
有谁知道哪些类有用以及如何实现这一目标?
还粘贴我试过的代码.
我已将问题转换为语句,后来转换为标记.
/////////1st part
String paragraph = "Did Matt win the men slalom?";
InputStream is1 = new FileInputStream("bins/en-sent.bin");
SentenceModel model1 = new SentenceModel(is1);
SentenceDetectorME sdetector = new SentenceDetectorME(model1);
String sentences[] = sdetector.sentDetect(paragraph);
System.out.println(sentences[0]);
is1.close();
////////2nd part
InputStream is2 = new FileInputStream("bins/en-token.bin");
TokenizerModel model2 = new TokenizerModel(is2);
Tokenizer tokenizer = new TokenizerME(model2);
String tokens[] = tokenizer.tokenize(sentences[0]);
for (String a : tokens)
System.out.println(a);
is2.close();
Run Code Online (Sandbox Code Playgroud) 是什么意思cut-off
,并iteration
在OpenNLP培训?或者就此而言,自然语言处理.我只需要一个外行解释这些术语.据我所知,迭代是算法重复的次数,并且截断是一个值,如果文本的值高于某个特定类别的截止值,它将被映射到该类别.我对吗?
我想使用OpenNLP进行"共识解析".来自Apache的文档(Coreference Resolution)未涵盖如何进行"共同参考解析".有没有人有任何文档/教程如何做到这一点?
我使用R 从文本中提取包含特定人名的句子,这里是一个示例段落:
作为蒂宾根的改革者,他接受了由他的叔叔Johann Reuchlin推荐的Martin Luther对维滕贝格大学的电话.Melanchthon在21岁时成为维滕贝格的希腊语教授.他研究了圣经,特别是保罗和福音派教义.他作为旁观者出席了莱比锡(1519)的辩论,但参与了他的评论.约翰·埃克(Johann Eck)攻击了他的观点,梅兰克顿(Melanchthon)在他的Defensio对手Johannem Eckium的基础上回复了圣经的权威.
在这个短段中,有几个人的名字,如: Johann Reuchlin,Melanchthon,Johann Eck.在openNLP软件包的帮助下,可以正确地提取和识别Martin Luther,Paul和Melanchthon三个人的名字.然后我有两个问题:
我想将openNLP中的解析(POS标记)显示为树结构可视化.下面我提供了openNLP的解析树,但我不能将其绘制为Python解析常见的可视化树.
install.packages(
"http://datacube.wu.ac.at/src/contrib/openNLPmodels.en_1.5-1.tar.gz",
repos=NULL,
type="source"
)
library(NLP)
library(openNLP)
x <- 'Scroll bar does not work the best either.'
s <- as.String(x)
## Annotators
sent_token_annotator <- Maxent_Sent_Token_Annotator()
word_token_annotator <- Maxent_Word_Token_Annotator()
parse_annotator <- Parse_Annotator()
a2 <- annotate(s, list(sent_token_annotator, word_token_annotator))
p <- parse_annotator(s, a2)
ptext <- sapply(p$features, `[[`, "parse")
ptext
Tree_parse(ptext)
## > ptext
## [1] "(TOP (S (NP (NNP Scroll) (NN bar)) (VP (VBZ does) (RB not) (VP (VB work) (NP (DT the) (JJS …
Run Code Online (Sandbox Code Playgroud) 有谁知道我在哪里可以找到如何在OpenNLP库中使用SimpleLemmatizer()类的示例,以及我可以在哪里找到示例英语字典?它似乎在文档中缺失.
我打算对我的数据进行一些数据调整.
情况 - 我有一个有字段的数据country
.它包含用户输入的国家/地区名称(可能包含拼写错误或同一国家/地区的不同国家/地区名称,例如美国/美国/美国).我有一个正确的国家/地区名称列表.
我想要的 - 预测它指的是哪个最近的国家.例如 - 如果U.S.
给出,那么它将更改为USA
(在我们的列表中更正国家名称).
我有什么方法可以使用Java或opennlp或任何其他方法吗?