Answered step by step
Verified Expert Solution
Question
1 Approved Answer
Project will be evaluated based on report (50%) and working (50%). You may use MATLAB or Python A shallow neural network is a feedforward network
Project will be evaluated based on report (50%) and working (50%). You may use MATLAB or Python A shallow neural network is a feedforward network with input, output, and one or more hidden layers, where all layers are fully connected. On the other hand, a deep neural network with many-many hidden layers first extracts features using convolutional neural networks and then uses fully connected layers for classification. The purpose of this project is to create, train, and test shallow network for regression and classification problems using MATLAB functions 'fitnet' and 'patternnet'. Note that feedforwardnet is a general function that includes 'fitnet' for regression and patternnet' for classification. net = fitnet (hiddenSizes, trainFcn) net = patternnet (hiddenSizes, trainFcn, performFcn) [Hint: If you are using Python consider appropriate functions]. You should use (i) simple-fit dataset and (ii) body-fat dataset for regression, while (iii) iris-dataset and (iv) cancer dataset for classification problems. The following MATLAB function will lead you to these datasets: help nndatasets Furthermore, consider changing hyperparameters such as (a) number of hidden layers of same or different sizes, (b) train-validate-test numbers, (c) trainFcn or optimization algorithms to get a better performance (i.e., goodness-of-fit or R>0.95 in regression and accuracy > 0.98 in classification). The following program snippet divides data set into (i) 90% train data and (ii) 10% test data: q=size(x,2); ql = floor(q*.9); q2=q-q1; ind=randperm(q); indl=ind(1:1); ind=ind(q1+(1:q2)); xl=x(:,indl); t1=t(:,indl); x2=x(:,ind2); 12=t(:,ind2); Use (x2, t2) pair as test data to obtain performance of your designed fitnet/patternet NN. The following program snippet creates a confusion matrix (see MATLAB manual for details) [x, t] =simpleclass_dataset; net = patternnet (10); net = train (net, x, t); y = net(x); [c, cm, ind, per] =confusion (t, y) Here *t' is target (or actual output), while 'y' is predicted output. Project will be evaluated based on report (50%) and working (50%). You may use MATLAB or Python A shallow neural network is a feedforward network with input, output, and one or more hidden layers, where all layers are fully connected. On the other hand, a deep neural network with many-many hidden layers first extracts features using convolutional neural networks and then uses fully connected layers for classification. The purpose of this project is to create, train, and test shallow network for regression and classification problems using MATLAB functions 'fitnet' and 'patternnet'. Note that feedforwardnet is a general function that includes 'fitnet' for regression and patternnet' for classification. net = fitnet (hiddenSizes, trainFcn) net = patternnet (hiddenSizes, trainFcn, performFcn) [Hint: If you are using Python consider appropriate functions]. You should use (i) simple-fit dataset and (ii) body-fat dataset for regression, while (iii) iris-dataset and (iv) cancer dataset for classification problems. The following MATLAB function will lead you to these datasets: help nndatasets Furthermore, consider changing hyperparameters such as (a) number of hidden layers of same or different sizes, (b) train-validate-test numbers, (c) trainFcn or optimization algorithms to get a better performance (i.e., goodness-of-fit or R>0.95 in regression and accuracy > 0.98 in classification). The following program snippet divides data set into (i) 90% train data and (ii) 10% test data: q=size(x,2); ql = floor(q*.9); q2=q-q1; ind=randperm(q); indl=ind(1:1); ind=ind(q1+(1:q2)); xl=x(:,indl); t1=t(:,indl); x2=x(:,ind2); 12=t(:,ind2); Use (x2, t2) pair as test data to obtain performance of your designed fitnet/patternet NN. The following program snippet creates a confusion matrix (see MATLAB manual for details) [x, t] =simpleclass_dataset; net = patternnet (10); net = train (net, x, t); y = net(x); [c, cm, ind, per] =confusion (t, y) Here *t' is target (or actual output), while 'y' is predicted output
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started