Peltarion Synapse

Synaps
Utvecklare Peltarion
Operativ system Microsoft Windows
Typ Programvara för neurala nätverk
Licens EULA
Hemsida Synapse hemsida

Synapse är en komponentbaserad utvecklingsmiljö för neurala nätverk och adaptiva system . Skapat av Peltarion , Synapse tillåter datautvinning , statistisk analys , visualisering , förbearbetning , design och träning av neurala nätverk och adaptiva system och distributionen av dem. Den använder en plug-in- baserad arkitektur som gör det till en allmän plattform för signalbehandling . Den första versionen av produkten släpptes i maj 2006.

Plattform

På grund av dess plug-in-baserade design kan användningen av Synapse vara mycket allmän. Synapse är baserat på Microsoft .NET- ramverket och alla Synapse-komponenter är också .NET-komponenter. Även om Peltarion ännu inte har släppt ett officiellt API för Synapse-plattformen, kommer användargjorda komponenter fram, några av dem är original, vilket visar plattformens öppenhet. [1]

Funktioner

Utvecklingscykeln i Synapse är baserad på den kanoniska dataminingcykeln . En anmärkningsvärd skillnad är dock att i Synapse är den cykeln inte linjär utan stöder ett iterativt tillvägagångssätt där användaren fritt kan röra sig mellan stegen. Synapse har fyra olika driftslägen som utgör utvecklingscykeln.

Förbearbetning

Förbearbetning i Synapse

Förbearbetningsläget är för datautvinning och dataförberedelse. I detta läge kan användaren importera, visualisera, utforska och transformera data på en mängd olika sätt. Data importeras med hjälp av formatkomponenter . Standardversionen innehåller formatkomponenter för att läsa och skriva data från CSV- filer (text), SQL- databaser, bilder och XML . Den importerade datan kan visualiseras genom visualiseringskomponenter och filter kan appliceras på datan. Filterkomponenterna sträcker sig från enkel omarrangering av data till mer avancerade FFT- och outlier - borttagningsfilter.

Visualiserarna inkluderar en mängd olika plotter och rutnät, som kan kopplas samman och förgrenas för att utföra komplexa datautvinningsuppgifter.

Design

I designläge är komponenter länkade för att konstruera en topologi . Länkade komponenter möjliggör ett signalflöde som skapar en rörfiltermaskin. När en signal ställs in på en komponent, filtrerar den signalen på något sätt och den filtrerade signalen kan sedan skickas till nästa komponent i den länkade kedjan av komponenter som bildar topologin. Komponenterna kan vara antingen statiska eller adaptiva. Förutom vanliga filter kan de vara källor eller sänkor (som plotter eller dataloggrar). Standardfördelningen av synaps kommer med en mängd olika komponenter, allt från enkla neurala nätverkskomponenter som viktlager och funktionslager, till hela neurala nätverk som självorganiserande kartor och mer komplexa statiska element som till exempel den fuzzy logic- komponenten. Styrsystemet väljs och konfigureras även i designläge .

Träning

Träningsläget används för att träna (anpassa) systemet, eller mer generellt för att starta styrsystemet som reglerar informationsflödet. Det är visuellt likt designläget och samma komponenter visas. Eftersom komponenterna har stöd för sammanhangskänsliga skärmar kan de få ett annat visuellt utseende under träning. Förutom att köra kontrollsystemet tillåter träningsläget exekvering av optimerare på hög nivå som genetiska algoritmer , partikelsvärmoptimering och simulerad glödgning . Fjärrkörning och träning är också möjligt i detta läge.

Efterbehandling

Förtroendeanalys vid efterbearbetning i Synapse

Efterbehandlingsläget är till för att analysera ett tränat system och förbereda ett sådant system för slutanvändning. Systemprestandan kan testas med hjälp av statistisk analys, känsligheten hos input-output-relationerna i ett system kan analyseras ( känslighetsanalys ) och rapporter kan genereras.

En av de viktigaste efterbearbetningskomponenterna är distributionskomponenten.

Spridning

Driftsättningskomponenten tillåter export av ett system gjort i Synapse till en enda .NET- komponent. Systemet i utvecklingsmiljön nedskalas så att det bara innehåller de minimala nödvändiga kraven för utförande och kompileras sedan till en assembly . Denna sammansättning kan sedan användas i alla .NET- ramverk eller .NET Compact Framework -applikationer. Det sistnämnda tillåter distribution till inbäddade enheter .

Exempelkod i C# :

     
    
    
 
    DeployedNeuralNet  net  =  new  DeployedNeuralNet  ();  // Skapa nn objekt  Matrix  input  =  someSensor  .  GetData  ();  // Få data från något  sensornät  .  Input_Sensor  =  input  ;  // Ställ in ingångar till nn  net  .  Kör  ();  // Kör nn-styrsystemet  someMotor  .  Effekt  =  netto  .  Output_Port0  ;  // Ställ in effekten av någon motor till utgången av nn 

Se även

externa länkar