如何减少RapidMiner中的文本尺寸

时间:2017-06-26 19:35:22

标签: data-mining text-mining rapidminer

使用Rapid Miner减少文本挖掘的功能维度时遇到了挑战。在这一点上,我正在通过单词标记处理文本,这导致了一个非常大的维度集,不适合建模和预测。 我如何改进使用其他方法清理数据的过程,只采取相关的单词?

我尝试过应用tfidf,但它删除了目标变量,我无法在模型阶段之前看到它做了什么。

由于

1 个答案:

答案 0 :(得分:0)

Process Documents运算符有一个修剪选项,通过一些仔细的参数设置,您可以删除常见和稀有属性。

这是一个展示它有效的玩具示例。

<?xml version="1.0" encoding="UTF-8"?><process version="7.5.000">
  <context>
    <input/>
    <output/>
    <macros/>
  </context>
  <operator activated="true" class="process" compatibility="7.5.000" expanded="true" name="Process">
    <process expanded="true">
      <operator activated="true" class="text:create_document" compatibility="7.4.001" expanded="true" height="68" name="Create Document" width="90" x="179" y="187">
        <parameter key="text" value="the cat sat on the mat&#10;the dog barked at the man&#10;the cow ate the grass&#10;the man sat on the grass"/>
      </operator>
      <operator activated="true" class="text:create_document" compatibility="7.4.001" expanded="true" height="68" name="Create Document (2)" width="90" x="179" y="289">
        <parameter key="text" value="the cat sat on the mat&#10;the man sat on the grass&#10;the rain in spain falls mainly on the plain"/>
      </operator>
      <operator activated="true" class="text:create_document" compatibility="7.4.001" expanded="true" height="68" name="Create Document (3)" width="90" x="179" y="391">
        <parameter key="text" value="the world is round"/>
      </operator>
      <operator activated="true" class="text:process_documents" compatibility="7.4.001" expanded="true" height="145" name="Process Documents" width="90" x="447" y="187">
        <parameter key="vector_creation" value="Term Occurrences"/>
        <parameter key="prune_method" value="absolute"/>
        <parameter key="prune_above_percent" value="40.0"/>
        <parameter key="prune_below_absolute" value="2"/>
        <parameter key="prune_above_absolute" value="5"/>
        <process expanded="true">
          <operator activated="true" class="text:tokenize" compatibility="7.4.001" expanded="true" height="68" name="Tokenize" width="90" x="246" y="34"/>
          <connect from_port="document" to_op="Tokenize" to_port="document"/>
          <connect from_op="Tokenize" from_port="document" to_port="document 1"/>
          <portSpacing port="source_document" spacing="0"/>
          <portSpacing port="sink_document 1" spacing="0"/>
          <portSpacing port="sink_document 2" spacing="0"/>
        </process>
      </operator>
      <connect from_op="Create Document" from_port="output" to_op="Process Documents" to_port="documents 1"/>
      <connect from_op="Create Document (2)" from_port="output" to_op="Process Documents" to_port="documents 2"/>
      <connect from_op="Create Document (3)" from_port="output" to_op="Process Documents" to_port="documents 3"/>
      <connect from_op="Process Documents" from_port="example set" 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>

需要一些小心才能使它恰到好处,但希望这会让你开始。