Building an Neural network with multiple inputs
9 次查看(过去 30 天)
显示 更早的评论
hi, Matlab Newbie
i have to create an Artificial Neural Network to classify using this datatset https://archive.ics.uci.edu/ml/datasets/breast+cancer+wisconsin+(original)
it take 10 input to one output
this is my code, i keep getting the error of " input and outputs have different samples" i know it is because i have 10 inputs and one 1 input but how can i fix it as i need all the 10 inputs?
close all
clear
clc
opts = detectImportOptions('breast-cancer-wisconsin.data', 'filetype','text');
BCTable = readtable('breast-cancer-wisconsin.data',opts);
InputVariable = table2array(BCTable(:,1:10));
OutputVariable = table2array(BCTable(:,11));
net = feedforwardnet(10, 'trainlm');
net = configure (net, InputVariable,OutputVariable);
[net,tr] = train(net,InputVariable, OutputVariable);
1 个评论
采纳的回答
Ameer Hamza
2020-12-29
The 10 in the line
feedforwardnet(10, 'trainlm');
have nothing to do with the number of inputs. You can put any number here. It is the number of hidden neurons in the first layer. The actual issue is the orientation of InputVariable and OutputVariable. MATLAB expects that each column of the input matrix contains a sample, and the number of columns is equal to the total number of samples. Similar is required for the output matrix. However, in your case, the samples are arranged row-wise. Just take the transpose of these matrices.
net = configure (net, InputVariable.',OutputVariable.');
[net,tr] = train(net, InputVariable.', OutputVariable.');
2 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Sequence and Numeric Feature Data Workflows 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!