Artificial Neural Network - Equations?

14 views (last 30 days)
wesleynotwise
wesleynotwise on 27 Jun 2017
Commented: Jayferd John on 22 May 2024
Let say I want to predict the strength of a composite material using ANN. Is it possible to return a series of equations in the output layer in ANN model? The reason I asked is simply because I want to know how the ANN correlates the independent variables in the input layer and hidden layers, also whether or not that relationship makes any sense in practice.
My gut tells me that it is not possible. Please correct me if I am wrong.

Answers (4)

JESUS DAVID ARIZA ROYETH
JESUS DAVID ARIZA ROYETH on 27 Jun 2017
Neural networks are very complex models including a lot of parameters, so a neural network that gives an equation as an answer doesn't make much sense, unless you have a few number of them, but the way a neural network works is a black box from wich you can obtain an answer based of an input. If you want to know how strong the relationship between the input and the output is you can use the pearson coefficient if your data is quantitative
  1 Comment
wesleynotwise
wesleynotwise on 28 Jun 2017
Yes. I think the black box in the neural network is my biggest fear for using it in my case (input and output are quantitative), as the relationship of variable to the output is not clear to the user. For example, if Variable A (one of the input) is directly proportional to the dependent variable (the output), how to know if this relationship still holds in the ANN?

Sign in to comment.


Greg Heath
Greg Heath on 28 Jun 2017
The equation for a single hidden layer is
yn = B1 + LW * tanh( B2 + IW*) *xn
where xn and tn are normalized to [-1,1].
weights IW1 IW2 and biases B1 B2 are
obtained directly fron the trained net.
IW = net.IW , etc.
Hope this helps,
Thank you for formally accepting my answer.
Greg
  2 Comments
wesleynotwise
wesleynotwise on 28 Jun 2017
I think if I need the final equation in the output layer, it is likely to be very long, bulky and chunky, and perhaps not meaningful for the output which is quantitative.
Greg Heath
Greg Heath on 1 Jul 2017
Edited: Greg Heath on 2 Jul 2017
y is obtained from yn by using the inverse part of MAPMINMAX.
y = [(tmax - tmin)/2]*yn + [(tmax + tmin)/2]
Hope this helps.
Greg

Sign in to comment.


venu T
venu T on 11 Dec 2018
Edited: venu T on 11 Dec 2018
Hi
I have run the ANN network and got the answer which is not what is predicted in the ANN I am here with giving all the data please help me
These are the W1 =[-0.098638 -1.478 -0.79801;
1.1991 -0.55255 1.9752;
0.097697 -1.2753 0.79466;
1.8374 0.95918 -0.0096127;
-1.7067 1.3765 1.1093]
W2[-0.43348 0.46505 -0.63726 -0.35395 0.3389]
B1[-3.3287;
-1.1953;
-0.17204;
0.92245;
3.515]
B2 [-0.63614]
Input X (1)= 200
X(2)=1.5
X(3)=5
Answer got for the values is 64.71233 in ANN run by the program
Tansig method
The equation I used from the weight and bais is this
Y=((-0.63614 + (-0.43348*(tansig(-0.098638*x(1)-1.478*x(2)-0.79801*x(3)-3.3287))) +(0.46505*(tansig(1.1991*x(1)-0.55255*x(2)+1.9752*x(3)-1.1953)))+(-0.63726*(tansig(0.097697*x(1)-1.27530*x(2)+0.79466*x(3)-0.17204) ))+(-0.35395* (tansig(1.8374*x(1)+0.95918*x(2)+0.0096127*x(3)+0.92245)))+(0.3389*(tansig(-1.7067*x(1)+1.3765*x(2)-1.1093*x(3)+3.515)))))
Ans is
Y =
-1.0677
which is not correct please hep
  3 Comments
Harshvardhan Solanki
Harshvardhan Solanki on 27 Apr 2024
Hey can you help me with you example you have done...
Jayferd John
Jayferd John on 22 May 2024
Hello, how about logsig function?

Sign in to comment.


Ali Zakeri
Ali Zakeri on 8 May 2021
Edited: Ali Zakeri on 11 May 2021
hi my friends
i have some concetration kinetic data and calculated reaction rate and must curve fitting by neural network.
i trained my network but by ignored of great error , i should fit on a langmuir hinshelwood model and define K parameters. i need this equation for kinetic reaction to use in process software and CFD calculations.
thanks
clc
clear all
close all
Bz=xlsread('exdata.xlsx','O3:O62');
CHX=xlsread('exdata.xlsx','P3:P62');
H2=xlsread('exdata.xlsx','Q3:Q62');
r=xlsread('exdata.xlsx','R3:R62');
input=[Bz CHX H2 ];
% Solve an Input-Output Fitting problem with a Neural Network
% Script generated by Neural Fitting app
% Created 24-Apr-2021 19:15:59
%
% This script assumes these variables are defined:
%
% input - input data.
% r - target data.
x = input';
t = r';
% Choose a Training Function
% For a list of all training functions type: help nntrain
% 'trainlm' is usually fastest.
% 'trainbr' takes longer but may be better for challenging problems.
% 'trainscg' uses less memory. Suitable in low memory situations.
trainFcn = 'trainbr'; % Bayesian Regularization backpropagation.
% Create a Fitting Network
hiddenLayerSize = 20;
net = fitnet(hiddenLayerSize,trainFcn);
% Setup Division of Data for Training, Validation, Testing
net.divideParam.trainRatio = 70/100;
net.divideParam.valRatio = 15/100;
net.divideParam.testRatio = 15/100;
% Train the Network
[net,tr] = train(net,x,t);
% Test the Network
y = net(x);
e = gsubtract(t,y);
performance = perform(net,t,y)
% View the Network
view(net)
% Plots
% Uncomment these lines to enable various plots.
%figure, plotperform(tr)
%figure, plottrainstate(tr)
%figure, ploterrhist(e)
%figure, plotregression(t,y)
%figure, plotfit(net,x,t)
%%%%%%%%%%%%%%%%%%%%%%%%%%%% Langmuir model %%%%%%%%%%%%%%%%%%%%%%%
function y=rate2(x)
global Pbz Ph2 Pchx r
k1=x(1);
k2=x(2);
Kbz=x(3);
Kh2=x(4);
y=((k1.*Pbz.*Ph2-k2.*Pchx)./(1+Kbz.*Pbz+Kh2.*Ph2))+r;

Categories

Find more on Sequence and Numeric Feature Data Workflows in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!