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

Coder: neuronales Netz aufrufen

 

diminho
Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.02.2012, 09:45     Titel: Coder: neuronales Netz aufrufen
  Antworten mit Zitat      
Hallo,

ich möchte ein trainertes neuronales Netz auf einem Windows Rechner mit Matlab Coder in C++ Code verwandeln und dann diesen auf einem Linux Debian 5.x Rechner aufrufen.

Ich habe versucht das neuronale Netz(net) und den Eingangswert x als input anzugeben, wie der fogende Code zeigt:
Code:

function y=simNN(net,x) %#codegen
y=sim(net,x);
 

Jedoch wird dies Klasse Network nicht unterstützt von codegen laut dieser Fehlermeldung:
Code:

"Class Network is not supported by Coder.Type."
 


Daraufhin habe ich versucht das neuronale Netz(net) in der Funktion zu laden:
Code:

function y=simNN(x) %#codegen
load net.mat;
y=sim(net,x);
 

Matlab unterstützt jedoch auch 'load' nicht bei der Codegeneration und biete mir an, load durch coder.extrinsic sozusagen zu ignorieren:
Code:

>> coder -build coderNN.prj ??? Function 'load' is not supported for code generation. Consider using coder.extrinsic('load') to bypass code generation.  Error in ==> simNN Line: 2 Column: 1 Code generation failed: Open error report.
 

Kann man Variablen aus dem Workspace irgendwie mit einbinden?

Eine weitere Möglichkeit wäre es die Gewichte und Parameter aus dem trainierten neuronalen Netz zu extrahieren und einzeln zu übergeben, aber das kann es ja nicht sein. Bei großen Netzen wird dies auch sehr schwer.

Ich habe auch bereits Matlab Compiler ausprobiert, der mir eine .dll erzeugt und ich so auf die Funktion zugreifen kann, aber da mein Zielrechner auf Debian basiert und Linux generell .so Bibliotheken und keine .dll verwendet, kommt dies nicht in Frage. Es ist definitiv nicht möglich mit Matlab Compiler von einem Windows Rechner .so anstatt .dll Dateien zu erstellen(Mathworks Support).

Hat jemand eine Idee? Ich bedanke mich schon im Voraus für jeden hilfreichen Vorschlag.

Gruß
Private Nachricht senden Benutzer-Profile anzeigen


diminho
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 11
Anmeldedatum: 19.01.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 01.02.2012, 12:12     Titel:
  Antworten mit Zitat      
Na, hat keiner eine Idee?Smile
Ich bräuchte wirklich dringend Hilfe.
Private Nachricht senden Benutzer-Profile anzeigen
 
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 - 2024 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.