User Tools

Site Tools


neurali:pybrain

Software (libero) di simulazione reti neurali

> Tornare alla pagina iniziale, per conoscere altri software di simulazione reti

PyBrain

  1. Inattivo dal giugno 2014 (o anche da prima?)
  2. Mailing list inaccessibile senza iscrizione a Google Gruppi
  3. pacchetto debian
  4. c'è un buon tutorail, utile per imparare cosa è una rete neurale e come funziona

Doc

Download

git clone ...

XOR

Il quickstart della documentazione mostra come creare una semplice rete per approssimare una funzione XOR

https://web.archive.org/web/20230115194325/http://pybrain.org/docs/

Dipendenze

python-scipy python-matplotlib

Altri Pacchetti Consigliati

LIBSVM RL-Glue ODE(0.8) PyOde(1.2) PIL (Python Imaging Library) PyOpenGL(3.0) tk/tkinter PyCDF SCons

Descrizione

PyBrain permette di costruire reti mettendo insieme dei modules insieme alle Connections: i primi (detti anche layer) contengono i nodi o percettroni, i secondi stabiliscono legami tra i nodi e contengono i pesi.

È necessaria la presenza dei seguenti tipi di moduli:

  • di input
  • di output
  • hidden
  • error (opzionale)

I nodi all'interno della rete sono caratterizzati da una funzione di attivazione (di trasferimento?), (utilizzata solo nella fase di apprendimento?), delle seguenti tipologie:

  • sigmoid (default)
  • linear (non effettua nessuna trasformazione)
  • softmax (nei problemi di classificazione)
  • Tanh (tangente iperbolica)
  • altro?

(vedere funzioni_di_attivazione_non_lineari)

Di solito la struttura dei layer di una rete è ordinata tramite Connections seguendo un modello di architettura FeedForward Neural Network (FNN), ma aggiungendo almeno un modulo di retroazione si può ottenere una architettura Recurrent Neural Network (RNN), che si distingue per la presenza di un ulteriore modulo che guarda indietro nel tempo (memoria).

FNN

Si utilizza un apprendimento “machine learning” detto anche “supervisioned learning”, che ottimizza i pesi delle connessioni usando un dataset e il metodo trainer Il metodo trainer potrebbe essere di tipo BackpropTrainer()

RNN

Si utilizza un apprendimento “reinforced learning” usando un environment e un optimization task. L'ambiente o environment potrebbe essere un labirinto (maze)

Il costruttore delle connection (deve essere applicato su ogni modulo/layer) può essere di tipo:

  • FullConnection()
  • da finire?

Tutorial

neurali/pybrain.txt · Last modified: 2023/06/09 09:42 by profpro