Neuronales Netzwerk < Matlab < Mathe-Software < Mathe < Vorhilfe
|
Aufgabe | Netzwerk mit verrauschten Ziffern, nach simulation Zuordnung entsprechendem ASCII WERT |
Ich bin dabei ein Neuronales Netzwerk zu erstellen, welches die Aufgabe hat gezeichnete Ziffern von 0 bis 9 in einer 5 x 7 Matrix zu Erkennen. Die Klassifikatoren beinhalten unterschiedlich viele Datensätze, die als *.dat oder *.xls Datei importiert werden. Das Neuronale Netzwerk, soll viele Datensätze zur Ziffer1, Ziffer2, usw. beinhalten und anschließend trainiert werden um im nachhinein über eine Schnittstelle getestet zu werden wie gut die Erkennung ist.
Was ich brauche ist also ein Netzwerk was verrauschte Ziffern(digits) enthält(diese werden importiert) anschließend bei der abfrage diese einem ASCII Wert zuordnet, sprich die verrauschte 1 ist einen 1.Der Rückgabeparameter soll einfach nur eine "1" sein. Zum testen hab ich ein zweites Netzwerk erstellt was korrekte Ziffern(digits ohne rauschen) enthält. wollte die beiden Netzwerke dann mal testen,aber das haut noch nicht hin, kann mir da vielleicht jemand weiter helfen? ich füge mal an dieser Stelle den Quellcode ein(nicht wundern ist in codeblocks vorgeschrieben und anschließen füge ich diesen in matlab immer ein):
/* Sammelmatrix 35*10, beinhaltet alle 10 digits*/
digits = [ digit0 digit1 digit2 digit3 digit4 digit5 digit6 digit7 digit8 digit9 ];
/* Import als .xls Datei der Digits*/
digits=xlsread('datenascii.xlsx');
/*selbstgeschriebene digits (werden nachher als .xls Datei importiert)*/
/*import digits NULL*/
null=xlsread('daten0.xlsx');
/*import digits EINS*/
eins=xlsread('daten1.xlsx');
/*import digits ZWEI*/
zwei=xlsread('daten2.xlsx');
/*import digits ZWEI*/
drei=xlsread('daten3.xlsx');
/*import digits ZWEI*/
vier=xlsread('daten4.xlsx');
/*import digits ZWEI*/
fünf=xlsread('daten5.xlsx');
// Target Matrix fuer die identifikation des Ausgabedigit*/
targetdigit = eye(10);
/*letzter stand:
>> einer=xlsread('daten1.xlsx');
>> digit=xlsread('datenascii.xlsx');
>> digit=xlsread('test.xlsx');
>> null=xlsread('daten0.xlsx');
>> eins=xlsread('daten1.xlsx');
>> zwei=xlsread('daten2.xlsx');
>> zwei=xlsread('daten2.xlsx');
>> drei=xlsread('daten3.xlsx');
>> vier=xlsread('daten4.xlsx');
>> fuenf=xlsread('daten5.xlsx');
>> targetdigit = eye(10);
>> PR = zeros(35,10);
>> PR(:,10) = 1;
>> netdig.trainParam.epochs = 10;
>> netdig = newff(digits,targetdig,10);
??? Undefined function or variable 'targetdig'.
>> netdig = newff(digits,targetdigit,10);
>> noisy=[null eins zwei drei vier fuenf];
>> netnoisy = newff(noisy,targetdig,10);
??? Undefined function or variable 'targetdig'.
>> netnoisy = newff(noisy,targetdigit,10);
>> netnoisy = train(netnoisy, noisy, targetdigit);
??? Error using ==> network.train at 146
Targets are incorrectly sized for network.
Matrix must have 60 columns.
*/
Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 23:20 Mo 04.06.2012 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|