training.cpp

来自「预测神经网络」· C++ 代码 · 共 61 行

CPP
61
字号
// Training.cpp: implementation of the Training class.
//
//////////////////////////////////////////////////////////////////////

#include "stdafx.h"
#include "Training.h"

//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////

Training::~Training()
{
  delete [] signalpoint;
  delete [] max_output_value;
  delete [] min_output_value;
  delete [] resultsname;
}


void Training::request_training_data()
{
  specify_signal_sample_size();
  signalpoint = new signal_data[sample_number];
  for(int i = 0; i < sample_number; i++) {signalpoint[i].signal_value = i;}
  normalize_data_in_array();
}

void Training::scramble_data_in_array(void)
{
  int swap1, swap2, hold_sample;
  float hold_rank;

  // randomly assign rank to all signals
  for(int sig = 0; sig < sample_number; sig ++)
  {signalpoint[sig].signal_rank = bedlam((long)(gaset));}

  // reorder signals according to rank
  for(swap1 = 0; swap1 < sample_number - 1; swap1++)
  {
    for(swap2 = swap1 + 1; swap2 < sample_number; swap2++)
    {
      if(signalpoint[swap1].signal_rank > signalpoint[swap2].signal_rank)
      {
	hold_sample = signalpoint[swap2].signal_value;
	hold_rank = signalpoint[swap2].signal_rank;
	signalpoint[swap2].signal_value = signalpoint[swap1].signal_value;
	signalpoint[swap2].signal_rank = signalpoint[swap1].signal_rank;
	signalpoint[swap1].signal_value = hold_sample;
	signalpoint[swap1].signal_rank = hold_rank;
      }
    }
  }
}

void Training::delete_signal_data_array(void)
{
  delete [] signalpoint;
  delete_signal_array();
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?