How to obtain an input-output relation for NN trainNetwork or similar functions
2 ビュー (過去 30 日間)
I am trying to apply the Train Network for Time Series Forecasting Using Deep Network Designer example available in the link below;
I wonder if there's anyway I can obtain a mathematical relation (formula) where I can use the input to forecast the variable on a sperate dataset? In other words; can I see the formula that Matlab created for the the forecast? If not, are there any other NN functions that can show the mathematical input-output relation?
John D'Errico 2022 年 9 月 11 日
編集済み: John D'Errico 2022 年 9 月 11 日
This is a common question, where someone wants to see a simple function they can write down and understand, from a complex tool. A neural network is essentially an analogue of a simple set of neurons from a brain. But there are many neurons in the model, each of which essentially reacts to a specific stimulous, as a linear combination of the inputs. Then at the output end, the network forms linear combinations of the predictions of each neuron, to predict the output. And worse, a neural network can have multiple layers, hidden to view. So effectively you may have "neurons" that react to some combination of the outputs of other "neurons".
The end result is something that is difficult to write down, except as long sums of nasty looking linear combinations of nonlinear functions, and then sums of that. There will be many coefficients that won't make much sense, except in terms of the result.
So as much as people want to see a nice function they can write down on paper, it won't exist except for the most trivial problem.
In terms of "showing" the input-output relationship, remember that a neural network is typically a (highly) mullti-dimensional thing. The number of dimensions really may be quite large. As such, there will often be nothing you can easily plot unless the problem is extremely small. Remember that plotting something requires that you can use a simple 2-dimensional plot window. At most, you can then visualize a 3-dimensional thing, as a surface plot, perhaps. So neural network with TWO inputs and ONE output would be possible to plot. But beyond that point, you would be stuck.