2016-06-07 7 views
0

Mit SharpNL und OpenNLPen-parser-chunking.bin, versuche ich einen Satz in einen Baum zu analysieren. Einer der Tests SharpNL die zeigt, dass ein Modell gegeben, können Sie einen Satz analysieren kann, wie folgt:Parsing eines Satzes mit SharpNL & en-parser-chunking.bin

var model = SharpNL.Parser.TreeInsert.Parser.Train("en", parseSamples, headRules, 100, 0); 

var parser = ParserFactory.Create(model); 

// Tests parsing to make sure the code does not has 
// a bug which fails always with a runtime exception 
var p = parser.Parse(Parse.ParseParse("She was just another freighter from the " + 
     "States and she seemed as commonplace as her name .")); 

Also habe ich heruntergeladen en-Parser-chunking.bin Datei, erstellt ein Modell davon sowie einen Parser und versucht, den gleichen Eingang zu analysieren:

var parserModelStream = new FileStream(@"en-parser-chunking.bin", FileMode.Open, FileAccess.Read); 
var parserModel = new ParserModel(parserModelStream); 
var parser = ParserFactory.Create(parserModel); 

var p = parser.Parse(Parse.ParseParse("She was just another freighter from the " + 
     "States and she seemed as commonplace as her name .")); 

Dieser Code läuft, aber wenn ich p im Debugger zu analysieren, hat es einen Leiter TOP und ohne Kinder. Ist das ein Problem mit dem Modell, das ich verwende? Oder wie ich es benutze?

Antwort

1

Statt dessen:

var p = parser.Parse(Parse.ParseParse("...")); 

ich einfach notwendig, um dies zu nutzen:

var p = ParserTool.ParseLine("...", parser, 1); 
Verwandte Themen