Сохраните учебные ошибочные данные к рабочему пространству MATLAB

При использовании Neuro-Fuzzy Designer можно экспортировать начальную структуру FIS в рабочую область MATLAB® и затем сгенерировать учебные ошибочные значения ANFIS. Начиная с экспорта ошибочных профилей обучения и валидации из приложения Neuro-Fuzzy Designer не поддерживается, используйте этот метод, чтобы сгенерировать такие диаграммы погрешностей.

Следующий пример показывает, как сохранить учебную ошибку, сгенерированную во время обучения ANFIS к рабочему пространству MATLAB.

  1. Загрузите свои обучающие данные (fuzex1trnData) и данные о валидации (fuzex1chkData) к рабочему пространству MATLAB.

    load fuzex1trnData.dat
    load fuzex1chkData.dat
    
  2. Откройте приложение Neuro-Fuzzy Designer.

    neuroFuzzyDesigner

    Default Neuro-Fuzzy Designer app dialog with an empty plot and a load data section in the bottom left corner.

  3. Загрузите обучающие данные от рабочего пространства MATLAB в Neuro-Fuzzy Designer.

    1. В разделе Load data выберите Training.

    2. Выберите worksp.

    3. Нажмите Load Data. В Загрузке из диалогового окна рабочей области введите имя переменной fuzex1trnData.

      Load from workspace dialog box with fuzex1trdData entered as the input variable name

    4. Нажать ОК. Neuro-Fuzzy Designer отображает обучающие данные в графике в виде набора кругов.

      Neuro-Fuzzy Designer app showing a plot of the imported training data

  4. Загрузите данные о проверке из рабочего пространства MATLAB в Neuro-Fuzzy Designer. В разделе Load data выберите Checking.

    Загрузите данные о проверке таким же образом как обучающие данные, задав имя переменной fuzex1chkData. Neuro-Fuzzy Designer отображает данные о проверке с помощью знаков "плюс", наложенных на обучающие данные.

    Neuro-Fuzzy Designer app showing a plot with the imported checking data together with the training data

  5. Сгенерируйте начальный FIS.

    1. В разделе Generate FIS выберите Grid partition.

    2. Нажмите Generate FIS.

    3. В диалоговом окне Add Membership Functions:

      • В разделе Input, в Number of MFs, задают количество входных функций принадлежности. Поскольку этот пример использует 4 для всех входных переменных.

      • В MF Type выберите gbellmf как входной тип функции принадлежности.

      • В разделе Output, в MF Type, выбирают linear как выходной тип функции принадлежности.

        Add membership functions dialog box showing the selected number and type of input membership functions and the selected output membership function type.

    4. Нажмите OK.

  6. Экспортируйте начальный FIS в рабочее пространство MATLAB.

    1. В Neuro-Fuzzy Designer выберите File> Export> To Workspace.

      Это действие открывает диалоговое окно, где вы задаете имя переменной MATLAB.

    2. В диалоговом окне Export To Workspace, в поле Workspace variable, вводят initfis как имя переменной.

      Dialog box with a field for entering the MATLAB workspace variable name

    3. Нажмите OK. Приложение экспортирует объект FIS в рабочее пространство MATLAB.

  7. Обучите FIS 40 эпохи. Вместо того, чтобы использовать один вызов anfis функционируйте, вызовите функцию в цикле с помощью 2 эпохи для каждого вызова. Этот метод обучения реплицирует учебный процесс, используемый приложением Neuro-Fuzzy Designer.

    В каждую учебную эпоху сохраните ошибки обучения и валидации.

    fis = initfis;
    opt = anfisOptions('EpochNumber',2,'ValidationData',fuzex1chkData);
    trainError = zeros(1,40);
    checkError = zeros(1,40);
    for ct = 1:40
        opt.InitialFIS = fis;
        [fis,error,~,~,chkError] = anfis(fuzex1trnData,opt);
        trainError(ct) = error(1);
        checkError(ct) = chkError(1);
    end
    
  8. Постройте ошибки обучения и валидации по учебному процессу. Эти ошибочные значения являются среднеквадратическими ошибками в каждую учебную эпоху.

    epochNum = 1:40;
    plot(epochNum,trainError,'b*',epochNum,checkError,'ro')
    xlabel('Epoch Number')
    ylabel('Error')
    legend('Training Error','Validation Error')

    Training error decreases from 0.24 to 0.15 over 40 training epochs. Validation error decreases in a similar fashion, increasing slightly in the final five epochs.

    Эти ошибочные профили похожи на ошибочные профили, когда та же начальная структура FIS обучена в приложении Neuro-Fuzzy Designer.

Смотрите также

Похожие темы