INeuralNetwork.PropagateBP

Синтаксис Fore

PropagateBP;

Синтаксис Fore.NET

PropagateBP();

Описание

Метод PropagateBP выполняет распространение сигнала в сети обратного распространения.

Комментарии

Сигнал - это входной вектор. В процессе его распространения рассчитываются выходные значения нейронов. Данные значения - результат работы сети. Для получения выходных значений используйте метод INeuralNetwork.GetOutputValues.

При выполнении метода INeuralNetwork.LearnBack он неявно вызывает PropagateBP.

Пример Fore

В качестве примера приведена функция, на вход которой подается обученная сеть обратного распространения (параметр Net). Для выполнения примера добавьте ссылки на системные сборки «NN», «IO».

Function m_BPTest(Net: NeuralNetwork): NeuralNetwork;
Var
    NetFile: File;
    TextW: ITextWriter;
    i, NumberOfInp: Integer;
    inputs, outputs: Array Of Double;
Begin
    NetFile := New File.Create;
    TextW := NetFile.OpenTextWriter("C:/BPTest.txt"True);
    NumberOfInp := Net.GetNumberOfInputs;
    inputs := New Double[NumberOfInp];
    For i := 0 To NumberOfInp - 1 Do
        inputs[i] := 0.5;
    End For;
    Net.SetInputValues(inputs);
    Net.PropagateBP;
    outputs := Net.GetOutputValues;
    For i := 0 To outputs.Length - 1 Do
        TextW.WriteLnString(outputs[i].ToString);
    End For;
    Return Net;
End Function m_BPTest;

После выполнения примера обученная сеть протестирует заданные входные данные. Результаты работы сети будут выведены в файл «C:/BPTest.txt».

Пример Fore.NET

В качестве примера приведена функция, на вход которой подается обученная сеть обратного распространения (параметр Net).

Imports Prognoz.Platform.Interop.NN;

Public Shared Function m_BPTest(Net: NeuralNetwork): NeuralNetwork;
Var
    NetFile: StreamWriter;
    i, NumberOfInp: Integer;
    inputs, outputs: System.Array;
Begin
    NetFile := File.CreateText("C:/BPTest.txt");
    NumberOfInp := Net.GetNumberOfInputs();
    inputs := New Double[NumberOfInp];
    For i := 0 To NumberOfInp - 1 Do
        inputs[i] := 0.5;
    End For;
    Net.SetInputValues(Var inputs);
    Net.PropagateBP();
    outputs := Net.GetOutputValues();
    For i := 0 To outputs.Length - 1 Do
        NetFile.WriteLine(outputs[i].ToString());
    End For;
    NetFile.Close();
    Return Net;
End Function;

После выполнения примера обученная сеть протестирует заданные входные данные. Результаты работы сети будут выведены в файл «C:/BPTest.txt».

См. также:

INeuralNetwork