【问题标题】:GATE machine learning doesn't workGATE 机器学习不起作用
【发布时间】:2016-04-26 10:45:38
【问题描述】:

我想在 GATE 中使用批量学习 PR 进行文本分类。我先写了这个配置XML,它可以工作。

<?xml version="1.0"?>
<ML-CONFIG>
  <VERBOSITY level="1"/>
  <SURROUND value="false"/>
  <PARAMETER name="thresholdProbabilityClassification" 
	     value="0.5"/>
  <multiClassification2Binary method="one-vs-others"/>
  <EVALUATION method="kfold" 
	      runs="5"
	      ratio="0.66" />
  <ENGINE nickname="PAUM" 
	  implementationName="PAUM"
	  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>
	  
	  <CONS-2>
        <TYPE>word_bag</TYPE>
        <FEATURE>feature</FEATURE>
      </CONS-2>
	  
	  <CONS-3>
        <TYPE>hashtag</TYPE>
        <FEATURE>feature</FEATURE>
      </CONS-3>
	  
	   <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>

但是,当我改变CONS的顺序时,如下所示,它不起作用。

<?xml version="1.0"?>
<ML-CONFIG>
  <VERBOSITY level="1"/>
  <SURROUND value="false"/>
  <PARAMETER name="thresholdProbabilityClassification" 
	     value="0.5"/>
  <multiClassification2Binary method="one-vs-others"/>
  <EVALUATION method="kfold" 
	      runs="5"
	      ratio="0.66" />
  <ENGINE nickname="PAUM" 
	  implementationName="PAUM"
	  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>word_bag</TYPE>
        <FEATURE>feature</FEATURE>
      </CONS-1>
	  
	  <CONS-2>
        <TYPE>hashtag</TYPE>
        <FEATURE>feature</FEATURE>
      </CONS-2>
	  
	   <CONS-3>
        <TYPE>Token</TYPE>
        <FEATURE>category</FEATURE>
      </CONS-3>
	 
	  <CONS-4>
        <TYPE>Token</TYPE>
        <FEATURE>string</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>

但是,最后一个可以加载到 GATE 中,每次我运行批量学习 PR 时,都会出现以下错误信息:

java.lang.NullPointerException 在gate.learning.NLPFeaturesOfDoc.writeNLPFeaturesToFile(NLPFeaturesOfDoc.java:818) 在gate.learning.LightWeightLearningApi.annotations2NLPFeatures(LightWeightLearningApi.java:198) 在gate.learning.EvaluationBasedOnDocs.oneRun(EvaluationBasedOnDocs.java:388) 在gate.learning.EvaluationBasedOnDocs.kfoldEval(EvaluationBasedOnDocs.java:197) 在gate.learning.EvaluationBasedOnDocs.evaluation(EvaluationBasedOnDocs.java:118) 在gate.learning.LearningAPIMain.execute(LearningAPIMain.java:776) 在gate.util.Benchmark.executeWithBenchmarking(Benchmark.java:291) 在gate.creole.ConditionalSerialController.runComponent(ConditionalSerialController.java:163) 在gate.creole.SerialController.executeImpl(SerialController.java:157) 在gate.creole.ConditionalSerialAnalyserController.executeImpl(ConditionalSerialAnalyserController.java:225) 在gate.creole.ConditionalSerialAnalyserController.execute(ConditionalSerialAnalyserController.java:132) 在gate.util.Benchmark.executeWithBenchmarking(Benchmark.java:291) 在 gate.gui.SerialControllerEditor$RunAction$1.run(SerialControllerEditor.java:1728) 在 java.lang.Thread.run(Unknown Source)

有人知道这个问题吗?

非常感谢!

【问题讨论】:

    标签: java machine-learning text-classification gate


    【解决方案1】:

    我建议您确保导致此问题的文档确实生成了配置 XML 文件中定义的功能。因为我看到你用了Token,所以我觉得那个文档是空的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-10-21
      • 1970-01-01
      • 2019-05-09
      • 1970-01-01
      • 2017-03-03
      • 2019-05-14
      • 2019-07-10
      • 2015-04-09
      相关资源
      最近更新 更多