Building an Neural network with multiple inputs

38 visualizzazioni (ultimi 30 giorni)
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);

Risposta accettata

Ameer Hamza
Ameer Hamza il 29 Dic 2020
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 Commenti
Ditf
Ditf il 29 Dic 2020
Modificato: Ditf il 29 Dic 2020
thank you so much, been stuck at it all day.

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Sequence and Numeric Feature Data Workflows in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by