Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi Neurale Netze und genectic algorithmen. (https://www.delphipraxis.net/195723-neurale-netze-und-genectic-algorithmen.html)

Mavarik 20. Mär 2018 13:52

AW: Neurale Netze und genectic algorithmen.
 
Zitat:

Zitat von mensch72 (Beitrag 1396775)
Deine Frage hat schonmal jemand sowas programmiert ist halt sehr allgemein... eventuell solltest du etwas genauer werden in welche Richtung dein Interesse mit welcher Zielstellung da geht.

Ich war einfach nur verwundert, dass diese Thema alle bisherigen Themen getoppt hat. Daher meine Vermutung, dass entweder sich viele damit beschäftigen oder sich gerne mehr damit beschäftigen / einarbeiten würden.

Daher meine Frage...

ConstantGardener 20. Mär 2018 14:30

AW: Neurale Netze und genectic algorithmen.
 
....ich hatte deinen BlogPost auch gelesen. Das Thema ist schon spannend und wird immer interessanter. Im Bereich Genetische Algo's habe ich auch schon einiges gemacht (Optimierung von Flächenbelegungen bei gleichzeitiger Gewinnmaximierung und Einhaltung der Arbeitskapazitäten usw.).
Die Herausforderung ist hier halt immer das richtige Verfahren für den Anwendungszweck zu wählen.

Du hattest ja geschrieben, dass du das ins FDK bringen willst. Die Frage ist natürlich immer wie allgemein man das umsetzen kann und dann noch performant ist.
Es gibt bei MitovSoftware und RiverSoft schon fertige Compos. Hast du damit schon mal experimentiert?

cu cg

jus 20. Mär 2018 15:15

AW: Neurale Netze und genectic algorithmen.
 
Ist zwar schon eine Weile her, aber hatte damals meine Diplomarbeit über ganzzahlige Optimierung bei Aktien unter anderen mit genetischen Algorithmen geschrieben. Den genetischen Algoritmus hatte ich mit Delphi implementiert. Ich schließe mich auch der Meinung an, dass es immer auf die Anwendung darauf ankommt, welches Tool man einsetzt. Aber vermutlich muß man aber zuerst das Tool gut verstehen, damit man weiß für was man es sinnvoll einsetzen kann. :wink:

lg,
jus

Michael II 20. Mär 2018 15:18

AW: Neurale Netze und genectic algorithmen.
 
Von microsoft ist da einiges in der Pipeline:

In diesem Zusammenhang fand ich den Windows Developer Day (März 2018) sehr spannend. Für die Berechnungen kann man neben der CPU, offenbar auch GPU und VPU nutzen.

Ich hoffe, dass man diese Dinge bald von Delphi aus ansprechen kann. Hat da jemand bereits Erfahrungen gesammelt?

Es wäre es sicher interessant, einmal mit einem Delphipraxis Team bei einem Wettbewerb von kaggle mitzumachen.

Mavarik 20. Mär 2018 16:41

AW: Neurale Netze und genectic algorithmen.
 
Zitat:

Zitat von ConstantGardener (Beitrag 1396781)
Du hattest ja geschrieben, dass du das ins FDK bringen willst. Die Frage ist natürlich immer wie allgemein man das umsetzen kann und dann noch performant ist.
Es gibt bei MitovSoftware und RiverSoft schon fertige Compos. Hast du damit schon mal experimentiert?

Ich habe mir keine anderen Komponenten angesehen, nur mal eine für Zeichenerkennung mit Delphi 6.

Es gibt sicherlich auch hunderte Komponten/API's oder was auch immer die viel besser sind...

Aber ich hab es gerne einfach, daher habe ich auch einen Wrapper für JSON und REST Service geschrieben und so ein Request/Datenverarbeitung in einer Zeile zu erledigen...

Daher auch hier ganz einfach und wenn man es selber mal getippt hat - versteht man es auch besser.

Delphi-Quellcode:
  ICanNeuralNet = Interface
    ['{5BDC1430-6823-4667-8DBC-C80E6363A208}']
    Procedure FeedForward(Const AInputValues : TNetValueList);
    Procedure BackProp(Const ATargetValues : TNetValueList);
    Function GetResults : TNetValueList;
    Procedure SaveToStream(S : TStream);
    Procedure LoadFromStream(S : TStream);
    Function AverageError : double;
    Function CrossOver(AOtherParent : ICanNeuralNet) : ICanNeuralNet;
    Function Mutate(APercentRate,AWeightChange : Double) : ICanNeuralNet;
    Function LayerData : TNetLayer;
  end;
Dann Einfach...

Delphi-Quellcode:
Var
  myNet : ICanNeuralNet;
begin
  myNet := TNeuralNet.Construct([9,10,10,2]); // Input,hidden,hidden,output
end;
CrossOver und Mutate hab ich auch implementiert... (Wie ist halt momentan noch fixed)

Aber für das "normale" Lernen geht es halt auch und zwar so (wie im Video) XOR Gatter!

Delphi-Quellcode:
 
FNet := TNeuralNet.Construct([2,4,1]);

  for i:=0 to 10000 do
    begin
      FNet.FeedForward([0.0,0.0]);
      FNet.BackProp([0]);
      FNet.FeedForward([1.0,1.0]);
      FNet.BackProp([0]);
      FNet.FeedForward([0.0,1.0]);
      FNet.BackProp([1]);
      FNet.FeedForward([1.0,0.0]);
      FNet.BackProp([1]);
      FNet.FeedForward([0.0,0.0]);
      if korrect then
        begin
          Memo1.Lines.Add(I.ToString+' need');
          Memo1.Lines.Add('Error : '+FNet.AverageError.tostring);
          break;
        end;
    end;
Fertig läuft...

Das war eigentlich auch nur mal so für "zwischen durch" um mal den Kopf frei zu bekommen...

Mavarik :coder:

ConstantGardener 20. Mär 2018 18:07

AW: Neurale Netze und genectic algorithmen.
 
@Mavarik: Was machst du mit dem CrossOver und Mutate in einem Neuronalen Netz? Willst du die Struktur automatisch über einen GA generieren lassen? Das wäre natürlich cool, und würde den Kopf frei machen! :-D

Mavarik 20. Mär 2018 18:29

AW: Neurale Netze und genectic algorithmen.
 
Zitat:

Zitat von ConstantGardener (Beitrag 1396809)
@Mavarik: Was machst du mit dem CrossOver und Mutate in einem Neuronalen Netz? Willst du die Struktur automatisch über einen GA generieren lassen? Das wäre natürlich cool, und würde den Kopf frei machen! :-D

Naja..

Neurale Netzt können z.B. durch Backpropagation lernen...
Der andere Ansatz ist die Genetic schiene...

Kreaturen 1-N haben als "Brain" ein Neural Netz, also muss hier das Crossover und Mutation Zeug auch angelegt werden.

Mavarik

ConstantGardener 20. Mär 2018 18:50

AW: Neurale Netze und genectic algorithmen.
 
... na dann bin ich mal gespannt. Halt uns auf dem Laufenden!

KodeZwerg 20. Mär 2018 19:15

AW: Neurale Netze und genectic algorithmen.
 
Zitat:

Zitat von Michael II (Beitrag 1396788)
.....GPU...... Hat da jemand bereits Erfahrungen gesammelt?

Mit meiner Eigenen Grafikkarte (NVIDIA) per Cuda ja, bei Alpha-Tests mit fremd Rechnern war mein Code Katastrophal, weswegen ich es nicht weiter verfolgt hatte.
Liegt allerdings schon sehr sehr viele Jahre zurück, wenn ich Glück habe finde ich noch den Code.

Rollo62 21. Mär 2018 07:13

AW: Neurale Netze und genectic algorithmen.
 
NN sind ja schon seit zig Jahren bekannt, habe mich aktuell nicht damit beschäftigt.
Interessant wäre die Frage was sie da von damals zu heute so Alles geändert hat,
bis auf Tiefe der Hiddenlayer und generell mehr Neuronen und Rechenleistung ?

Es gibt ja glaube ich ganz neue Ansätze wie man Neuronen simulieren sollte aus der Medizin.
Interessant ist halt immer was Google & Co. so machen, die sind ja ganz weit vorne.
Ist ein simples Standard NN von vor 20 Jahren noch zeitgemäß ?

Wichtig wäre mir auch das es in der GPU läuft, um damit z.B. Echtzeit Objekterkennung ala
Yolo-Algorithmus hinbekommt.

Das Thema ist sehr interessant und wird wohl noch interessanter werden demnächst.
Da ist es gut mal auf dem Laufenden zu bleiben.

Rollo


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:59 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz