2

Ich benutze fit_generator, der Daten aus einer Datei liest, und wenn es an das Ende der Datei gelangt, lädt es Daten aus der nächsten Datei. Ich benutze auch eine Stateful RNN in Keras, so dass ich den Zustand manuell zurücksetzen muss, in diesem Fall jedes Mal, wenn der Generator eine neue Datei lädt. Wie kann ich das erreichen?Keras Fit_generator Rückruf

Der Generator sieht ungefähr so ​​aus:

def gendata(): 
    crow = 0 
    path = 'somepath' 
    df = pd.read_csv(path) 
    while True: 
     if x + l < len(df): 
      yield df.iloc[x:x+l,:] 
      x += l 
     else: 
      path = newpath(path) 
      df = pd.read_csv(path) 
      model.reset_states() # this line obviously doesn't work 

Antwort

0

Nur der Generator einen Verweis auf das Modell übergeben:

def gendata(model): 
    ... 
    model.reset_states() 

model.fit_generator(gendata(model), ...) 
Verwandte Themen