Ich möchte Batch Learning PR verwenden, um Textklassifizierung in GATE durchzuführen. Ich schreibe zuerst dieses configure XML und es kann funktionieren.GATE Machine Learning funktioniert nicht
<?xml version="1.0"?>
<ML-CONFIG>
<VERBOSITY level="1"/>
<SURROUND value="false"/>
<PARAMETER name="thresholdProbabilityClassification"
\t value="0.5"/>
<multiClassification2Binary method="one-vs-others"/>
<EVALUATION method="kfold"
\t runs="5"
\t ratio="0.66" />
<ENGINE nickname="PAUM"
\t implementationName="PAUM"
\t options=" -p 50 -n 5 -optB 0.0 "/>
<DATASET>
<INSTANCE-TYPE>emotion</INSTANCE-TYPE>
<NGRAM>
<NAME>ngram</NAME>
<NUMBER>1</NUMBER>
<CONSNUM>4</CONSNUM>
<CONS-1>
<TYPE>Token</TYPE>
<FEATURE>string</FEATURE>
</CONS-1>
\t
\t <CONS-2>
<TYPE>word_bag</TYPE>
<FEATURE>feature</FEATURE>
</CONS-2>
\t
\t <CONS-3>
<TYPE>hashtag</TYPE>
<FEATURE>feature</FEATURE>
</CONS-3>
\t
\t <CONS-4>
<TYPE>Token</TYPE>
<FEATURE>category</FEATURE>
</CONS-4>
<WEIGHT>2</WEIGHT>
</NGRAM>
<ATTRIBUTE>
<NAME>Class</NAME>
<SEMTYPE>NOMINAL</SEMTYPE>
<TYPE>emotion</TYPE>
<FEATURE>feature</FEATURE>
<POSITION>0</POSITION>
<CLASS/>
</ATTRIBUTE>
</DATASET>
</ML-CONFIG>
Allerdings, wenn ich die Reihenfolge der CONS, wie die folgenden zu ändern, es funktioniert nicht.
<?xml version="1.0"?>
<ML-CONFIG>
<VERBOSITY level="1"/>
<SURROUND value="false"/>
<PARAMETER name="thresholdProbabilityClassification"
\t value="0.5"/>
<multiClassification2Binary method="one-vs-others"/>
<EVALUATION method="kfold"
\t runs="5"
\t ratio="0.66" />
<ENGINE nickname="PAUM"
\t implementationName="PAUM"
\t options=" -p 50 -n 5 -optB 0.0 "/>
<DATASET>
<INSTANCE-TYPE>emotion</INSTANCE-TYPE>
<NGRAM>
<NAME>ngram</NAME>
<NUMBER>1</NUMBER>
<CONSNUM>4</CONSNUM>
\t
\t <CONS-1>
<TYPE>word_bag</TYPE>
<FEATURE>feature</FEATURE>
</CONS-1>
\t
\t <CONS-2>
<TYPE>hashtag</TYPE>
<FEATURE>feature</FEATURE>
</CONS-2>
\t
\t <CONS-3>
<TYPE>Token</TYPE>
<FEATURE>category</FEATURE>
</CONS-3>
\t
\t <CONS-4>
<TYPE>Token</TYPE>
<FEATURE>string</FEATURE>
</CONS-4>
\t
<WEIGHT>2</WEIGHT>
</NGRAM>
<ATTRIBUTE>
<NAME>Class</NAME>
<SEMTYPE>NOMINAL</SEMTYPE>
<TYPE>emotion</TYPE>
<FEATURE>feature</FEATURE>
<POSITION>0</POSITION>
<CLASS/>
</ATTRIBUTE>
</DATASET>
</ML-CONFIG>
kann jedoch die letzte in GATE geladen und jedesmal, wenn ich die Batch-Lernen PR laufen, geht es die folgenden Fehlerinformationen:
java.lang. Nullpointer bei gate.learning.NLPFeaturesOfDoc.writeNLPFeaturesToFile (NLPFeaturesOfDoc.java:818) bei gate.learning.LightWeightLearningApi.annotations2NLPFeatures (LightWeightLearningApi.java:198) bei gate.learning.EvaluationBasedOnDocs.oneRun (EvaluationBasedOnDocs.java:388) bei gate.learning.EvaluationBasedOnDocs.kfoldEval (EvaluationBasedOnDocs.java:197) bei gate.learning.EvaluationBasedOnDocs.evaluation (EvaluationBasedOnDocs.java:118) bei gate.learning.LearningAPIMain.execute (LearningAPIMain.java:776) bei gate.util.Benchmark.executeWithBenchmarking (Benchmark.java:291) bei gate.creole.ConditionalSerialController.runComponent (ConditionalSerialController.java:163) bei Gate. creole.SerialController.executeImpl (SerialController.java:157) bei gate.creole.ConditionalSerialAnalyserController.executeImpl (ConditionalSerialAnalyserController.java:225) bei gate.creole.ConditionalSerialAnalyserController.execute (Conditio nalSerialAnalyserController.java:132) bei gate.util.Benchmark.executeWithBenchmarking (Benchmark.java:291) bei gate.gui.SerialControllerEditor $ RunAction $ 1.run (SerialControllerEditor.java:1728) bei java.lang.Thread.run (Unbekannte Quelle)
Hat jemand eine Idee für dieses Problem?
Vielen Dank!