2013-04-08 338 views
1

我正在使用Rapidminer進行分析。我在幾個模型上使用交叉驗證來獲得最佳工作模型。現在我想用這個模型來測試我使用Split Data來估計性能的單獨測試集。如何使用Rapidminer測試測試集?

如何使用測試裝置?據我所知,所有的驗證模塊都使用模型製作的訓練集。我可以在模型和測試集中使用哪種性能指標?

回答

3

在模型中使用「應用模型」運算符作爲第一個輸入,使用您的測試集作爲第二個輸入。該操作員將返回帶有一些額外特殊屬性的標記數據集,這是您的數據輸入,例如,預測和信心。 「性能」操作符需要這些屬性來測量應用於測試集的模型的性能。

下面是一個使用「Samples」存儲庫中的訓練和測試集的小例子。

<?xml version="1.0" encoding="UTF-8" standalone="no"?> 
<process version="5.3.007"> 
    <context> 
    <input/> 
    <output/> 
    <macros/> 
    </context> 
    <operator activated="true" class="process" compatibility="5.3.007" expanded="true" name="Process"> 
    <process expanded="true"> 
     <operator activated="true" class="retrieve" compatibility="5.3.007" expanded="true" height="60" name="Golf" width="90" x="45" y="30"> 
     <parameter key="repository_entry" value="//Samples/data/Golf"/> 
     </operator> 
     <operator activated="true" class="decision_tree" compatibility="5.3.007" expanded="true" height="76" name="Decision Tree" width="90" x="179" y="30"/> 
     <operator activated="true" class="retrieve" compatibility="5.3.007" expanded="true" height="60" name="Golf-Testset" width="90" x="179" y="120"> 
     <parameter key="repository_entry" value="//Samples/data/Golf-Testset"/> 
     </operator> 
     <operator activated="true" breakpoints="before,after" class="apply_model" compatibility="5.3.007" expanded="true" height="76" name="Apply Model" width="90" x="313" y="30"> 
     <list key="application_parameters"/> 
     </operator> 
     <operator activated="true" class="performance" compatibility="5.3.007" expanded="true" height="76" name="Performance" width="90" x="447" y="30"/> 
     <connect from_op="Golf" from_port="output" to_op="Decision Tree" to_port="training set"/> 
     <connect from_op="Decision Tree" from_port="model" to_op="Apply Model" to_port="model"/> 
     <connect from_op="Golf-Testset" from_port="output" to_op="Apply Model" to_port="unlabelled data"/> 
     <connect from_op="Apply Model" from_port="labelled data" to_op="Performance" to_port="labelled data"/> 
     <connect from_op="Performance" from_port="performance" to_port="result 1"/> 
     <portSpacing port="source_input 1" spacing="0"/> 
     <portSpacing port="sink_result 1" spacing="0"/> 
     <portSpacing port="sink_result 2" spacing="0"/> 
    </process> 
    </operator> 
</process>