我的数据集包含1000个示例,500个正数和500个负数。我用0.7分割比率验证它们,然后将它们放在具有默认参数的rapidminers MP上,除了有两层25个节点。
然而,当我验证它时,我的所有预测都是否定的,我不明白为什么?即使是优化不佳的MP(就像在这个例子中一样),我应该至少得到一个正面预测。
嗯,这是我第一次在快速通道上做这件事,可能这是一个非常基本的错误,但我无法找到它。
XML代码:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<process version="5.3.008">
<context>
<input/>
<output/>
<macros/>
</context>
<operator activated="true" class="process" compatibility="5.3.008" expanded="true" name="Process">
<process expanded="true">
<operator activated="true" class="split_validation" compatibility="5.3.008" expanded="true" height="112" name="Validation (6)" width="90" x="112" y="255">
<process expanded="true">
<operator activated="true" class="neural_net" compatibility="5.3.008" expanded="true" height="76" name="Neural Net" width="90" x="69" y="30">
<list key="hidden_layers">
<parameter key="Layer" value="25"/>
<parameter key="Layer2" value="25"/>
</list>
<parameter key="training_cycles" value="100"/>
<parameter key="shuffle" value="false"/>
</operator>
<connect from_port="training" to_op="Neural Net" to_port="training set"/>
<connect from_op="Neural Net" from_port="model" to_port="model"/>
<portSpacing port="source_training" spacing="0"/>
<portSpacing port="sink_model" spacing="0"/>
<portSpacing port="sink_through 1" spacing="0"/>
</process>
<process expanded="true">
<operator activated="true" class="apply_model" compatibility="5.3.008" expanded="true" height="76" name="Apply Model (6)" width="90" x="45" y="30">
<list key="application_parameters"/>
</operator>
<operator activated="true" class="performance" compatibility="5.3.008" expanded="true" height="76" name="Performance (6)" width="90" x="147" y="30"/>
<connect from_port="model" to_op="Apply Model (6)" to_port="model"/>
<connect from_port="test set" to_op="Apply Model (6)" to_port="unlabelled data"/>
<connect from_op="Apply Model (6)" from_port="labelled data" to_op="Performance (6)" to_port="labelled data"/>
<connect from_op="Performance (6)" from_port="performance" to_port="averagable 1"/>
<portSpacing port="source_model" spacing="0"/>
<portSpacing port="source_test set" spacing="0"/>
<portSpacing port="source_through 1" spacing="0"/>
<portSpacing port="sink_averagable 1" spacing="0"/>
<portSpacing port="sink_averagable 2" spacing="0"/>
</process>
</operator>
<portSpacing port="source_input 1" spacing="0"/>
<portSpacing port="sink_result 1" spacing="0"/>
</process>
</operator>
</process>
答案 0 :(得分:0)
到目前为止,你的过程看起来非常好。有趣的是:您的数据会发生什么变化?要调查这一点,您可以设置一些断点并检查您的样本。在NN学习者之前设置的断点将向您显示训练集的外观,在模型应用程序之前设置的另一个断点允许您检查测试集。 为确保正确的类分布,您可以为验证操作员启用分层抽样。 NN学习器的shuffle选项允许操作员在训练模型之前对训练集进行混洗。如果您的数据项已经排序,这可能会导致模型不合适,这非常有用。