当前位置: 首页 > 知识库问答 >
问题:

在nlp的文本中找到令牌

姬俊驰
2023-03-14

我在opennlp文档页面中遇到了这个类TokenizerME(http://opennlp.apache.org/documentation/manual/opennlp.html).我不明白怎么计算概率。我用不同的输入测试了它,但仍然不理解。有人能帮我理解它背后的算法吗?我编写了这个示例代码

public void tokenizerDemo(){
    try {
        InputStream modelIn = new FileInputStream("en-token.bin");
        TokenizerModel model = new TokenizerModel(modelIn);
        Tokenizer tokenizer = new TokenizerME(model);
        String tokens[] = tokenizer.tokenize("This is is book");
        for(String t:tokens){
            System.out.println("Token : "+t);
        }
        double tokenProbs[] = ((TokenizerME) tokenizer).getTokenProbabilities();
        for(double tP : tokenProbs){
            System.out.println("Token Prob : "+tP);
        }
    }
    catch (IOException e) {
      e.printStackTrace();
    }
}

我得到了这个输出

令牌:这个

代币:是吗

代币:是吗

代币:书

代币Prob:1.0

代币Prob:1.0

代币Prob:1.0

代币Prob:1.0

我希望令牌“是”被计算两次,其概率应该略高于其他令牌。困惑。

共有1个答案

谯乐池
2023-03-14

标记器概率与标记器识别标记跨越自身的信心有关:根据标记器模型,该上下文中的字符串是否为标记。字符串开头带有空格的“This”很可能是英语的代词,而后面带有“s”的“Thi”则不是。

概率与特定标记内容被看到的频率无关,只是这个字符序列是否是一个可能的标记。字符串“is is is is is is”很容易对英语进行标记,因为“is”是一个常见的单词,空格是很好的标记边界。就是这样。

如果你对计算n-gram概率感兴趣,你应该看看语言模型。(显然,你仍然需要先标记你的文本。)

 类似资料:
  • 问题内容: 我有一系列要执行的命令。但是,只要出现“找不到命令”错误,我就需要退出。因此,执行输出后检查不是一种选择 “ $?” 当“未找到命令”并成功时,变量等于零。 问题答案: 如果应该通过脚本完成此操作,则很自然地可以使用条件来表达这种行为:

  • 本文向大家介绍Python在BeautifulSoup中的元素后找到文本,包括了Python在BeautifulSoup中的元素后找到文本的使用技巧和注意事项,需要的朋友参考一下 示例 假设您有以下HTML: 并且您需要在label元素之后找到文本“ John Smith” 。 在这种情况下,您可以label按文本查找元素,然后使用.next_sibling属性: 印刷品John Smith。

  • 我通过调用python方法来编写自动化测试的机器人。在python中,我使用xpath在python中找到文本“分支TH1”。这是参考, 这是我的剧本, 这是我想测试的网络代码, 这是当我手动找到xpath时,你会看到我可以手动找到元素“//*[包含(文本(),'分支TH1')]/.../输入/...”作为1of1在红框高亮显示,但它不会在代码行高亮显示(不确定这是否是重点)。 在我运行it之后,

  • 我刚刚开始使用CoreNLP版本3.6.0。我已经从这个网站下载了这个版本。使用命令行管道,我已经能够执行标准管道注释器,但是truecase注释器遇到了一个问题: 这是终端输出的副本: 有什么想法吗?

  • 在此处输入代码我正在对一个电影页面进行web抓取,但它找不到跨度,尽管在xpath中它可以识别它,它找不到文本,当我打印它时,它打印为空。 这是在此处输入图像描述的代码 找到物品的证据请在此处输入图像描述 网址 https://www.cinecolombia.com/cali/peliculas/el-olvido-que-seremosxpath //section@class=“可折叠的显示

  • 我有一些不同语言的文本,可能有一些拼写错误或其他错误,我想检索他们自己的词汇。一般来说,我对自然语言处理没有经验,所以可能我使用了一些不正确的单词。 关于词汇,我指的是一种语言的单词集合,其中每个单词都是唯一的,不考虑性别、数字或时态的屈折变化(例如,think、thinks和thought are都是考虑-思考)。 这是一个主要问题,所以让我们把它简化为一种语言的词汇检索,例如英语,并且没有错误