Information Selection for Regression

Xin_Wang
Xin_Wang New Altair Community Member
edited November 2024 in Community Q&A
I am using the information selection extension package for noise in label detection. The targets of my problem are numerical numbers. I am trying to use CNN but it does not select any examples. Does the package support regression as well or is it strictly for classification. If it also supports regression, what parameters are needed to set the process up correctly?

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<process version="7.1.000">
  <context>
    <input/>
    <output/>
    <macros/>
  </context>
  <operator activated="true" class="process" compatibility="7.1.000" expanded="true" name="Process">
    <process expanded="true">
      <operator activated="true" breakpoints="after" class="read_csv" compatibility="7.1.000" expanded="true" height="68" name="Read CSV" width="90" x="45" y="34">
        <parameter key="csv_file" value="/Users/xinkwang/test_file.csv"/>
        <parameter key="column_separators" value=","/>
        <parameter key="use_quotes" value="false"/>
        <list key="annotations"/>
        <list key="data_set_meta_data_information"/>
        <parameter key="read_not_matching_values_as_missings" value="false"/>
      </operator>
      <operator activated="true" class="set_role" compatibility="7.1.000" expanded="true" height="82" name="Set Role" width="90" x="179" y="34">
        <parameter key="attribute_name" value="att324"/>
        <parameter key="target_role" value="label"/>
        <list key="set_additional_roles">
          <parameter key="asin" value="id"/>
          <parameter key="product_name" value="id"/>
        </list>
      </operator>
      <operator activated="true" breakpoints="after" class="select_attributes" compatibility="7.1.000" expanded="true" height="82" name="Select Attributes" width="90" x="313" y="34">
        <parameter key="attribute_filter_type" value="subset"/>
        <parameter key="attributes" value="product_name|asin"/>
        <parameter key="invert_selection" value="true"/>
      </operator>
      <operator activated="true" class="prules:cnn_sel" compatibility="7.0.000" expanded="true" height="103" name="Select by CNN" width="90" x="447" y="34">
        <parameter key="measure_types" value="NumericalMeasures"/>
      </operator>
      <connect from_op="Read CSV" from_port="output" to_op="Set Role" to_port="example set input"/>
      <connect from_op="Set Role" from_port="example set output" to_op="Select Attributes" to_port="example set input"/>
      <connect from_op="Select Attributes" from_port="example set output" to_op="Select by CNN" to_port="exampleSet"/>
      <connect from_op="Select by CNN" from_port="exampleSet" to_port="result 1"/>
      <connect from_op="Select by CNN" from_port="prototypes" to_port="result 2"/>
      <portSpacing port="source_input 1" spacing="0"/>
      <portSpacing port="sink_result 1" spacing="0"/>
      <portSpacing port="sink_result 2" spacing="0"/>
      <portSpacing port="sink_result 3" spacing="0"/>
    </process>
  </operator>
</process>

Answers

  • MartinLiebig
    MartinLiebig
    Altair Employee
    Dear Xing,

    to be honest i need to admit that i never used this extension. It was always on my todo list. Marcin, the auther of the package, is also active on this board. You might send him a private message: http://rapid-i.com/rapidforum/index.php?action=profile;u=2560

    ~Martin
  • Xin_Wang
    Xin_Wang New Altair Community Member
    Thanks a lot for the tip, Martin!
  • marcin_blachnik
    marcin_blachnik New Altair Community Member
    In the Information Selection toolbox, each Select by ... operator (such as CNN, ENN etc) has Decision Function parameter. The Decision Function defines method used to measure the error. For classification problem this should be configured to Class Loss, but for regression problem it can be ThresholdLinearLoss or Local Threshold Linear Loss (I don't recomment the other two with "Relative" key word).The decision function is executed when the algorithm takes a decision to select or reject given example. Both Decision Functions for regression are similar, and they can be written as IF abs(label_predicted -  label_truth) < STD * threshold.
    The threshold parameter must be configured for both regression decision functions. It defines the maximum acceptable difference between label predicted by nearest neighbors and the true label. In the case of Local decision function the threshold is multiplied by standard deviation of labels of the nearest examples (the noise estimation parameter defines number of nearest neighbors considered to estimate standard deviation of labels). The local function is more robust buth more computationally expensive. For non local decision function STD = 1;

    Hope it helped
    Best
    Marcin