Sieć Neuronowa
Propagacja Wsteczna

neural.teach
Class TeachData

java.lang.Object
  |
  +--neural.teach.TeachData
Direct Known Subclasses:
Digits35, Function, Map

public abstract class TeachData
extends Object

Dane dla sieci (do uczenia lub testowania). Umożliwia uczenie i testowanie sieci. Umożliwia serializację danych.

Author:
Bartłomiej Starosta

Inner Class Summary
protected  class TeachData.NeurData
          Obiekty tej klasy to zestawy danych dla sieci.
 
Field Summary
protected  int inDim
          Rozmiar danych wejściowych (liczba wejść).
protected  ArrayList neurData
          Tablica z danymi.
protected  int outDim
          Rozmiar danych wyjściowych (liczba wyjść).
 
Constructor Summary
TeachData(int in, int out)
          Konstruktor tworzący obiekt niezawierający żadnych danych.
TeachData(String fileName)
          Konstruktor tworzący obiekt z danymi wczytanymi z pliku.
 
Method Summary
protected  void add(double[] ins)
          Wstawia dane wejściowe do tablicy.
protected  void add(double[] ins, double[] outs)
          Wstawia dane do tablicy.
 double[][][] load(String fileName)
          Wczytuje z pliku tablicę z danymi umieszczoną tam przy pomocy metody save(String) .
 void randomTeach(NeuralNet nn, int rep, double lr)
          Uczy podaną sieć podając dane losowo.
 void save(String fileName)
          Zapisuje tablicę z danymi do pliku.
 void test(NeuralNet nn)
          Testuje podaną sieć.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

inDim

protected int inDim
Rozmiar danych wejściowych (liczba wejść).

neurData

protected ArrayList neurData
Tablica z danymi. Zawiera obiekty klasy NeurData.

outDim

protected int outDim
Rozmiar danych wyjściowych (liczba wyjść).
Constructor Detail

TeachData

public TeachData(int in,
                 int out)
Konstruktor tworzący obiekt niezawierający żadnych danych.
Parameters:
in - liczba wejść
out - liczba wyjść

TeachData

public TeachData(String fileName)
Konstruktor tworzący obiekt z danymi wczytanymi z pliku. Plik powinien zawierać tablicę double[][][] zapisaną przy użyciu mechanizmu serializacji w pliku z rozszerzeniem ".ser".
Parameters:
fileName - nazwa pliku (bez rozszerzenia ".ser"
See Also:
load(String), save(String)
Method Detail

add

protected void add(double[] ins)
            throws IllegalArgumentException
Wstawia dane wejściowe do tablicy.
Parameters:
ins - tablica z danymi wejścoiwymi
Throws:
IllegalArgumentException - jeśli rozmiar danych wejściowych jest nieprawidłowy

add

protected void add(double[] ins,
                   double[] outs)
            throws IllegalArgumentException
Wstawia dane do tablicy.
Parameters:
ins - tablica z danymi wejścoiwymi
outs - tablica z danymi wyjścoiwymi
Throws:
IllegalArgumentException - jeśli rozmiar danych wejściowych lub wyjściowych jest nieprawidłowy

load

public double[][][] load(String fileName)
Wczytuje z pliku tablicę z danymi umieszczoną tam przy pomocy metody save(String) . Wykorzystuje serializację.
Parameters:
fileName - nazwa pliku (bez rozszerzenia ".ser")
Returns:
tablica z danymi
See Also:
konstruktor

randomTeach

public void randomTeach(NeuralNet nn,
                        int rep,
                        double lr)
Uczy podaną sieć podając dane losowo.
Parameters:
nn - sieć do uczenia
rep - liczba powtórzeń
lr - stała uczenia

save

public void save(String fileName)
Zapisuje tablicę z danymi do pliku. Wykorzystuje serializację.
Parameters:
fileName - nazwa pliku (bez rozszerzenia ".ser")

test

public void test(NeuralNet nn)
Testuje podaną sieć. Podaje kolejno wszystkie zestawy danych.
Parameters:
nn - testowana sieć

Sieć Neuronowa
Propagacja Wsteczna

Materiały dydaktyczne do zajęć NAI
Bartłomiej Starosta, barstar(at)pjwstk(dot)edu(dot)pl
PJWSTK 2001/2002