"support vector machine"

jeje
jeje New Altair Community Member
edited November 5 in Community Q&A
Hi, I ran SVM with kernel type set to polynomial on RM and it used to work fine. But after more experiments It started to  giving errors Cannot deliver AttributeWeights with parameter "kernel_type" set to "polynomial".  May I know what I did wrong? After a few weeks,  I reinstall RM and now Even the field changes , It used to be kernel shift =1, max evaluations= 500 , generations without improvement =10, population size =10, inertia weight =1.0 and global best weight =1.0  but now it changed to convergence epsilon= 0.001, max iterations = 100000, L pos = 1.0 etc. I am almost certain that I didn't use SVM (PSO)
Thanks in advance :)
Tagged:

Answers

  • MariusHelf
    MariusHelf New Altair Community Member
    Hey,

    to be honest I have never used an SVM besides the standard SVM and the libSVM with linear and rbf kernel, and once in a while the one-class svm. These implementations and kernels should be sufficient for all real-world applications and work reliably.

    Best, Marius
  • jeje
    jeje New Altair Community Member
    Even when I used the standard SVM , decision tree or k NN with cross validation , the output shows no confusion matrix (accuracy), precision, recall, and AUCs and it used to be there.
  • MariusHelf
    MariusHelf New Altair Community Member
    Ok, can you please post your process setup?
  • jeje
    jeje New Altair Community Member
    image Do you mean process setup as in the main process? There used to be no error "Decision Tree cannot handle numerical label." but now it has. and the same for all other models.
  • Nils_Woehler
    Nils_Woehler New Altair Community Member
    Hi jeje,

    I think Marius ment your process setup as XML as it is described here: http://rapid-i.com/rapidforum/index.php/topic,4782.0.html
    But I have another question: How did you manage to place your operators outside the process panel?

    Best,
    Nils
  • jeje
    jeje New Altair Community Member
    It always appear like that everytime i drag the operators .This is the xml code
    <?xml version="1.0" encoding="UTF-8" standalone="no"?>
    <process version="5.2.008">
      <context>
        <input>
          <location>//NewLocalRepository/model/TR1</location>
        </input>
        <output/>
        <macros/>
      </context>
      <operator activated="true" class="process" compatibility="5.2.008" expanded="true" name="Process">
        <process expanded="true" height="341" width="748">
          <operator activated="true" class="retrieve" compatibility="5.2.008" expanded="true" height="60" name="Retrieve" width="90" x="-43" y="-12">
            <parameter key="repository_entry" value="//NewLocalRepository/model/TR1"/>
          </operator>
          <operator activated="true" class="replace_missing_values" compatibility="5.2.008" expanded="true" height="94" name="Replace Missing Values" width="90" x="45" y="30">
            <list key="columns"/>
          </operator>
          <operator activated="true" class="set_role" compatibility="5.2.008" expanded="true" height="76" name="Set Role" width="90" x="179" y="30">
            <parameter key="name" value="ID"/>
            <parameter key="target_role" value="id"/>
            <list key="set_additional_roles"/>
          </operator>
          <operator activated="true" class="retrieve" compatibility="5.2.008" expanded="true" height="60" name="Retrieve (3)" width="90" x="45" y="165">
            <parameter key="repository_entry" value="//NewLocalRepository/model/TR3"/>
          </operator>
          <operator activated="true" class="replace_missing_values" compatibility="5.2.008" expanded="true" height="94" name="Replace Missing Values (2)" width="90" x="82" y="158">
            <list key="columns"/>
          </operator>
          <operator activated="true" class="set_role" compatibility="5.2.008" expanded="true" height="76" name="Set Role (3)" width="90" x="179" y="165">
            <parameter key="name" value="ID"/>
            <parameter key="target_role" value="id"/>
            <list key="set_additional_roles"/>
          </operator>
          <operator activated="true" class="retrieve" compatibility="5.2.008" expanded="true" height="60" name="Retrieve (4)" width="90" x="-17" y="266">
            <parameter key="repository_entry" value="//NewLocalRepository/model/TR4"/>
          </operator>
          <operator activated="true" class="set_role" compatibility="5.2.008" expanded="true" height="76" name="Set Role (4)" width="90" x="179" y="255">
            <parameter key="name" value="ID"/>
            <parameter key="target_role" value="id"/>
            <list key="set_additional_roles"/>
          </operator>
          <operator activated="true" class="join" compatibility="5.2.008" expanded="true" height="76" name="Join (2)" width="90" x="313" y="165">
            <list key="key_attributes"/>
          </operator>
          <operator activated="true" class="retrieve" compatibility="5.2.008" expanded="true" height="60" name="Retrieve (2)" width="90" x="-10" y="91">
            <parameter key="repository_entry" value="//NewLocalRepository/model/TR2"/>
          </operator>
          <operator activated="true" class="set_role" compatibility="5.2.008" expanded="true" height="76" name="Set Role (2)" width="90" x="179" y="75">
            <parameter key="name" value="ID"/>
            <parameter key="target_role" value="id"/>
            <list key="set_additional_roles"/>
          </operator>
          <operator activated="true" class="join" compatibility="5.2.008" expanded="true" height="76" name="Join" width="90" x="313" y="30">
            <list key="key_attributes"/>
          </operator>
          <operator activated="true" class="join" compatibility="5.2.008" expanded="true" height="76" name="Join (3)" width="90" x="447" y="30">
            <list key="key_attributes"/>
          </operator>
          <operator activated="true" class="nominal_to_numerical" compatibility="5.2.008" expanded="true" height="94" name="Nominal to Numerical" width="90" x="447" y="210">
            <list key="comparison_groups"/>
          </operator>
          <operator activated="true" class="x_validation" compatibility="5.2.008" expanded="true" height="112" name="Validation" width="90" x="581" y="120">
            <description>A cross-validation evaluating a decision tree model.</description>
            <parameter key="sampling_type" value="shuffled sampling"/>
            <process expanded="true" height="296" width="366">
              <operator activated="true" class="support_vector_machine" compatibility="5.2.008" expanded="true" height="112" name="SVM" width="90" x="179" y="30">
                <parameter key="kernel_type" value="polynomial"/>
              </operator>
              <connect from_port="training" to_op="SVM" to_port="training set"/>
              <connect from_op="SVM" from_port="model" to_port="model"/>
              <connect from_op="SVM" from_port="weights" to_port="through 1"/>
              <portSpacing port="source_training" spacing="0"/>
              <portSpacing port="sink_model" spacing="0"/>
              <portSpacing port="sink_through 1" spacing="0"/>
              <portSpacing port="sink_through 2" spacing="0"/>
            </process>
            <process expanded="true" height="289" width="299">
              <operator activated="true" class="apply_model" compatibility="5.2.008" expanded="true" height="76" name="Apply Model" width="90" x="45" y="30">
                <list key="application_parameters"/>
              </operator>
              <operator activated="true" class="performance" compatibility="5.2.008" expanded="true" height="76" name="Performance" width="90" x="179" y="30"/>
              <connect from_port="model" to_op="Apply Model" to_port="model"/>
              <connect from_port="test set" 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="averagable 1"/>
              <portSpacing port="source_model" spacing="0"/>
              <portSpacing port="source_test set" spacing="0"/>
              <portSpacing port="source_through 1" spacing="0"/>
              <portSpacing port="source_through 2" spacing="0"/>
              <portSpacing port="sink_averagable 1" spacing="0"/>
              <portSpacing port="sink_averagable 2" spacing="0"/>
            </process>
          </operator>
          <connect from_op="Retrieve" from_port="output" to_op="Replace Missing Values" to_port="example set input"/>
          <connect from_op="Replace Missing Values" from_port="example set output" to_op="Set Role" to_port="example set input"/>
          <connect from_op="Set Role" from_port="example set output" to_op="Join" to_port="left"/>
          <connect from_op="Retrieve (3)" from_port="output" to_op="Replace Missing Values (2)" to_port="example set input"/>
          <connect from_op="Replace Missing Values (2)" from_port="example set output" to_op="Set Role (3)" to_port="example set input"/>
          <connect from_op="Set Role (3)" from_port="example set output" to_op="Join (2)" to_port="left"/>
          <connect from_op="Retrieve (4)" from_port="output" to_op="Set Role (4)" to_port="example set input"/>
          <connect from_op="Set Role (4)" from_port="example set output" to_op="Join (2)" to_port="right"/>
          <connect from_op="Join (2)" from_port="join" to_op="Join (3)" to_port="right"/>
          <connect from_op="Retrieve (2)" from_port="output" to_op="Set Role (2)" to_port="example set input"/>
          <connect from_op="Set Role (2)" from_port="example set output" to_op="Join" to_port="right"/>
          <connect from_op="Join" from_port="join" to_op="Join (3)" to_port="left"/>
          <connect from_op="Join (3)" from_port="join" to_op="Nominal to Numerical" to_port="example set input"/>
          <connect from_op="Nominal to Numerical" from_port="example set output" to_op="Validation" to_port="training"/>
          <connect from_op="Validation" from_port="averagable 1" 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>
    [ /code]