nltk.parse.InsideChartParser¶
- class nltk.parse.InsideChartParser[source]¶
Bases:
BottomUpProbabilisticChartParser
A bottom-up parser for
PCFG
grammars that tries edges in descending order of the inside probabilities of their trees. The “inside probability” of a tree is simply the probability of the entire tree, ignoring its context. In particular, the inside probability of a tree generated by production p with children c[1], c[2], …, c[n] is P(p)P(c[1])P(c[2])…P(c[n]); and the inside probability of a token is 1 if it is present in the text, and 0 if it is absent.This sorting order results in a type of lowest-cost-first search strategy.
- sort_queue(queue, chart)[source]¶
Sort the given queue of edges, in descending order of the inside probabilities of the edges’ trees.
- Parameters
queue (list(Edge)) – The queue of
Edge
objects to sort. Each edge in this queue is an edge that could be added to the chart by the fundamental rule; but that has not yet been added.chart (Chart) – The chart being used to parse the text. This chart can be used to provide extra information for sorting the queue.
- Return type
None
- __init__(grammar, beam_size=0, trace=0)[source]¶
Create a new
BottomUpProbabilisticChartParser
, that usesgrammar
to parse texts.- Parameters
grammar (PCFG) – The grammar used to parse texts.
beam_size (int) – The maximum length for the parser’s edge queue.
trace (int) – The level of tracing that should be used when parsing a text.
0
will generate no tracing output; and higher numbers will produce more verbose tracing output.
- parse(tokens)[source]¶
- Returns
An iterator that generates parse trees for the sentence. When possible this list is sorted from most likely to least likely.
- Parameters
sent (list(str)) – The sentence to be parsed
- Return type
iter(Tree)