English 中文(简体)
自然语言工具箱——包装
  • 时间:2024-12-27

Natural Language Toolkit - Parsing


Previous Page Next Page  

Parsing and its relevance in NLP

“Parsing”一词的原由拉丁字pars'(即part'),用于从案文中引出确切的含义或字义。 它还称为合成分析或合成分析。 比较正式的克法规则,辛加税分析对案文进行有意义的分析。 例如,像“我的热冰-am”这样的句子将遭到教区或合成麻醉师的拒绝。

从这个意义上讲,我们可以将教义或同学分析或同学分析定义为如下:

它可以定义为按照正式制图规则分析自然语言符号的过程。

Relevance

在以下各点的帮助下,我们可以理解《国家扫盲行动计划》中的教义的相关性:

    Parser用于报告任何辛塔克斯错误。

    这有助于从经常发生的错误中恢复,以便继续处理方案其余部分。

    Par树是在树冠的帮助下建立的。

    Parser被用于创建象征表,在《国家扫盲计划》中发挥重要作用。

    假释还用于生产中间代表。

Deep Vs Shallow Parsing

Deep Parsing Shallow Parsing
In deep parsing, the search strategy will give a complete syntactic structure to a sentence. It is the task of parsing a pmited part of the syntactic information from the given task.
It is suitable for complex NLP apppcations. It can be used for less complex NLP apppcations.
Dialogue systems and summarization are the examples of NLP apppcations where deep parsing is used. Information extraction and text mining are the examples of NLP apppcations where deep parsing is used.
It is also called full parsing. It is also called chunking.

Various types of parsers

正如所讨论的那样,教区基本上是对文法的程序性解释。 它在寻找各种树木后找到了一种最佳的树。 让我们看到下面一些可供使用的教区:

Recursive descent parser

留级是最直截了当的教区之一。 下面是一些关于休养血统教区的重要要点。

    这一进程走在前列。

    它试图核实投入流的辛子是否正确。

    它读到左边的投入句。

    恢复性血统平线器的一个必要行动是读取投入流的特性,并将其与克法的终点站相匹配。

Shift-reduce parser

下面是一些关于转产物的重要要点:

    它遵循一个简单的自下而上的进程。

    它试图找到一系列与克马尔生产右侧相对应的字句和短语,代之以生产左侧。

    以上试图确定一个字数顺序,直到整个句子减少为止。

    换言之,转播的树冠以投入符号为起点,并试图将树冠植树到开始的象征。

Chart parser

下面是图表的重要要点:

    它主要有用或适合模棱两可的文法,包括天然语言的文法。

    它采用动态方案处理 par问题。

    由于有活力的方案设计,部分假设规模的结果储存在一个称为“chart”的结构中。

    “chart”也可以重新使用。

Regexp parser

彩礼是最常用的服饰技术之一。 以下是关于Regexp parser的一些要点:

    如名称所示,它使用一种以图表形式确定的定期表达方式,以标有色体为准。

    它基本上使用这些定期表达方式,将投入判决加以平息,并从中产生树苗。

Example

下面是Regexp Parser的一个工作例子。


import nltk
sentence = [
   ("a", "DT"),
   ("clever", "JJ"),
   ("fox","NN"),
   ("was","VBP"),
   ("jumping","VBP"),
   ("over","IN"),
   ("the","DT"),
   ("wall","NN")
]
grammar = "NP:{<DT>?<JJ>*<NN>}" 
Reg_parser = nltk.RegexpParser(grammar)
Reg_parser.parse(sentence)
Output = Reg_parser.parse(sentence)
Output.draw()

Output

Regexp Parser

Dependency Parsing

依赖性选择(DP)是一个现代教区机制,其主要概念是,每个语言单位,即语言单位,通过直接联系相互相关。 这些直接联系实际上为:>[>[>>] 语文上的“独立性”>。 例如,以下图表显示了“>>>“John can at the ball”

Dependency Parsing

NLTK Package

我们遵循两种方式,即:

Probabipstic, projective dependency parser

这是我们能够与恩塔克教区划一的附属关系。 但是,该教区限制有一套有限的培训数据。

Stanford parser

这是我们能够采取另一种方式,将依赖同新科索沃解放阵线混为一谈。 斯坦福教区是最先进的附属区。 NLTK有一个包裹。 利用它,我们需要在两点之后下载:

WFP CoreNLP parser

语文模式。 例如,英语模式。

Example

一旦你下载该模型,我们就可以通过NLTK使用该模型:


from nltk.parse.stanford import StanfordDependencyParser
path_jar =  path_to/stanford-parser-full-2014-08-27/stanford-parser.jar 
path_models_jar =  path_to/stanford-parser-full-2014-08-27/stanford-parser-3.4.1-models.jar 
dep_parser = StanfordDependencyParser(
   path_to_jar = path_jar, path_to_models_jar = path_models_jar
)
result = dep_parser.raw_parse( I shot an elephant in my sleep )
depndency = result.next()
pst(dependency.triples())

Output


[
   ((u shot , u VBD ), u nsubj , (u I , u PRP )),
   ((u shot , u VBD ), u dobj , (u elephant , u NN )),
   ((u elephant , u NN ), u det , (u an , u DT )),
   ((u shot , u VBD ), u prep , (u in , u IN )),
   ((u in , u IN ), u pobj , (u sleep , u NN )),
   ((u sleep , u NN ), u poss , (u my , u PRP$ ))
]
Advertisements