The Altair Community is migrating to a new platform to provide a better experience for you. In preparation for the migration, the Altair Community is on read-only mode from October 28 - November 6, 2024. Technical support via cases will continue to work as is. For any urgent requests from Students/Faculty members, please submit the form linked here

How to use neural network for predicting future values?

QisthiQisthi Member Posts: 2 Contributor I
edited July 2019 in Help
hello, I am new to RapidMiner and i need some help.

for past few days I use RapidMiner to optimized the weights in neural network using a genetic algorithm. in this case i use neural network for prediction. and I want to see the results of prediction for some future values. there are some problem :
a. for example I have historical data from 2001 to 2010 and I want to see the results predicted in 2011 until 2015
b. i have 5 input and 1 input for the neural network. the data type is numerical.
i show you my xml file that formed when I use RapidMiner. it just shows the RMSE of my data when its treated using neural network based on genetic algorithm.
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
<process version="5.3.015">
  <context>
    <input/>
    <output/>
    <macros/>
  </context>
  <operator activated="true" class="process" compatibility="5.3.015" expanded="true" name="Process">
    <process expanded="true">
      <operator activated="true" class="retrieve" compatibility="5.3.015" expanded="true" height="60" name="Retrieve ANN1" width="90" x="112" y="75">
        <parameter key="repository_entry" value="//Local Repository/Tugas Akhir/ANN1"/>
      </operator>
      <operator activated="true" class="x_validation" compatibility="5.3.015" expanded="true" height="112" name="Validation" width="90" x="380" y="120">
        <parameter key="sampling_type" value="shuffled sampling"/>
        <process expanded="true">
          <operator activated="true" class="neural_net" compatibility="5.3.015" expanded="true" height="76" name="Neural Net" width="90" x="112" y="30">
            <list key="hidden_layers">
              <parameter key="one" value="5"/>
            </list>
            <parameter key="training_cycles" value="850"/>
            <parameter key="learning_rate" value="0.1"/>
            <parameter key="momentum" value="0.9"/>
          </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.015" 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.3.015" 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="sink_averagable 1" spacing="0"/>
          <portSpacing port="sink_averagable 2" spacing="0"/>
        </process>
      </operator>
      <connect from_op="Retrieve ANN1" from_port="output" to_op="Validation" to_port="training"/>
      <connect from_op="Validation" from_port="model" to_port="result 1"/>
      <connect from_op="Validation" from_port="training" to_port="result 2"/>
      <connect from_op="Validation" from_port="averagable 1" to_port="result 3"/>
      <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"/>
      <portSpacing port="sink_result 4" spacing="0"/>
    </process>
  </operator>
</process>
sorry for my english and thank you.

Answers

  • homburghomburg Employee-RapidMiner, Member Posts: 114 RM Data Scientist
    Hi Qisthi,

    so far your process looks OK. But how does the structure of your data look like? You mentioned training and test data based on a time frame. What is it that you want to achieve? Do you want to perform predictions based on a regression analysis or do a time series forecast?

    Cheers,
    Helge
  • QisthiQisthi Member Posts: 2 Contributor I
    thank you for your reply. i want to perform prediction based on time series forecast. actually, i want to predict CO2 prediction at some factory. and i want to know with my historical data how much co2 will be produced in the future. so my structure data is consist of 5 attributes that influence CO2 production in that factory and 1 output in this case is co2
Sign In or Register to comment.