WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Performance eines Feedforward-Netzwerkes

 

dahumpi1989
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 28.12.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 28.12.2013, 22:11     Titel: Performance eines Feedforward-Netzwerkes
  Antworten mit Zitat      
Hallöchen zusammen,

ich versuche eine Vorhersage für die auftretende Globalstrahlung mit Hilfe eines Neuronalen Netzes zu machen. Ich habe eine ganze Menge Daten, minütliche Datenaufnahme für Globalstrahlung, Windrichtung, Windgeschwindigkeit, Niederschlag, Lufttemperatur, Luftfeuchtigkeit gemessen im Jahre 2009. Anhand dieser Daten versuche ich für einen Zeitpunkt aus dem Jahre 2009 die auftretende Globalstrahlung vorherzusagen.
Dazu habe ich mir folgendes Netz gebaut:

Code:
%
    j=(1:1:10080);
    r=xlsread('Mai_woche.xlsx');
    u=r(1:10080,1);
    u1=u';
    y=xlsread('Mai_woche.xlsx');
    d=y(1:10080,2);
    d1=d';

    k=10;  
    x=50;
    y=1;
    s=rng;

    iweights=rand(k,y);
    lweights=rand(x,k);
    b1=rand(k,y);
    b2=rand(x,y);

    net=newff(minmax(u1),[k,x,y],{'tansig','tansig','purelin'},'trainlm');
    net.IW{1,1}=iweights;
    net.LW{2,1}=lweights;
    net.b{1}=b1;
    net.b{2}=b2;
    net.IW{1,1}
    net.LW{2,1}

    net.trainParam.show = NaN;
    net.trainParam.lr = 0.04;
    net.trainParam.epochs = 10000;
    net.trainParam.goal = 1;
    net.trainParam.min_grad=1e-30;
    net.trainParam.mu_max=1e18;
    net.trainParam.mu_inc=20;
    net.trainParam.mu_min=1e-5;
    net.performParam.ratio=0.5;
    net.trainParam.time=inf;

    [net,tr]=train(net,u1,d1);
    a=sim(net,u1);
    e=d1-a;
    perf=mse(e);

    %3. Plot

    plot(j,a,'r',j,d1,'g')
 


Dabei habe ich als Eingangsvektor des Netzes u1 die Lufttemperatur (Intervall [7,6°C - 22,8°C]) und als dazugehörigen Ausgangsvektor d1 die Globalstrahlung (Intervall [0 W/m^2 - 1196 W/m^2]) mit jeweils einer Länge von 10080 Datenpaaren, was einer Woche minütlich entspricht.
Im Moment versuche ich das Netz auf den Verlauf zu trainieren und versuche eben das Ausgang des Netzes (rot) auf den tatsächlichen Globalstrahlungswert (grün) abzugleichen. Der Plot nach dem Training ist im Bild dargestellt. Wie man auf dem Plot sieht, ist die Performance nicht die beste und ich frage mich nun wirklich, was ich tun kann, um die Performance zu verbessern. Denn der Fehler dort liegt noch bei gut 40% und so macht eine Vorhersage nicht viel Sinn. Ich hab schon verschiedentlich mit den Neuronenzahlen rumgespielt und auch die Trainingsfunktionen variiert, jedoch mit mäßigem Erfolg.
Außerdem habe ich Das gleiche nochmal mit Eingangswerten von einem Monat (tägliche Mittelwerte), also einer Vektorlänge von 30 versucht und erziele erstaunlicher Weise bessere Ergebnisse. Da schaffe ich es den Fehler auf 2% zu reduzieren, was allerdings der Tatsache widerspricht, dass das Netz präziser wird, je ausführlicher meine Datenbasis ist. Ich bin echt am verzweifeln und komme nicht weiter.
Gibt es vielleicht jemanden, der etwas Erfahrung damit hat und mir einen Tipp geben könnte, der zielführend ist??? Embarassed Embarassed

Vielen Dank schon mal im Voraus!!!

FORUM.jpg
 Beschreibung:

Download
 Dateiname:  FORUM.jpg
 Dateigröße:  29.25 KB
 Heruntergeladen:  325 mal
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden


dahumpi1989
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 28.12.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 30.12.2013, 15:56     Titel:
  Antworten mit Zitat      
Hat keiner eine Idee? Sad
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.