Training a feedforward neural network with a custom performance function and no given target outputs.

Hello everybody,
I am using a feedforward neural network for a function approximation. I have 5 inputs that result in 8 outputs. These outputs are parameters that describe / alter a vehicle driving path. The combination of the inputs and the according output-parameters allows the calculation of control signals (steering angle, accelleration, etc.). My goal is to train the neural network without having target outputs, because I don't know the perfect control signals or parameters for the according input values.
I want the performance function to calculate the performance score from the control signals after every training step. In other words: After the net calculated the 8 output parameters I can use these parameters to get the control signals and then give a score determining if these control signals are good or bad -> the performance score. What I can not do is get the optimal target outputs from somewhere and use a standard performance function like mse.
If you need special code snippets to help please let me know. I am not allowed to just publish my whole script here. The most important things to know should be that I use the feedforwardnet (https://de.mathworks.com/help/deeplearning/ref/feedforwardnet.html) and train (https://de.mathworks.com/help/deeplearning/ref/network.train.html?s_tid=doc_ta) funtions from the deep learning toolbox.
To sum up I have two problems to solve:
  1. Implementing a custom performance function.
  2. Training the neural network without target outputs.
As far as I understand giving the target outputs to the train function is just optional (documentation: "default is zeros"), so no. 2 should just "solve itself" after implementing a performance function that does not use target outputs. However I am not 100% sure on this so correct me if I am wrong.
Thank you in advance, best regards,
Thorben

1 Comment

Addition: Is it possible to use a function-handle in place of the performance function or do I have to make a new file like e.g. 'mse' ?
Just being able to use a function handle would be the best option for me.

Sign in to comment.

Answers (1)

Hello Thorben,
I am facing the same problem. Did you find a solution for your problem?
Best regards
Silvio

Categories

Find more on Deep Learning Toolbox in Help Center and File Exchange

Products

Release

R2021a

Asked:

on 23 Sep 2021

Answered:

on 14 Nov 2022

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!