Quando si lavora con il grafico globale predefinito, è possibile rimuovere i nodi dopo che sono stati aggiunti o, in alternativa, ripristinare il grafico predefinito da svuotare? Quando lavoro con TF in modo interattivo in IPython, mi ritrovo a dover riavviare il kernel ripetutamente. Mi piacerebbe essere in grado di sperimentare con i grafici più facilmente se possibile.Rimuovere i nodi dal grafico o ripristinare l'intero grafico predefinito
risposta
aggiornamento 11/2/2016
tf.reset_default_graph()
roba vecchia
C'è reset_default_graph
, ma non fa parte della API pubblica (penso che dovrebbe essere, non qualcuno vuole file an issue su GitHub?)
La mia soluzione per ripristinare le cose è questa:
from tensorflow.python.framework import ops
ops.reset_default_graph()
sess = tf.InteractiveSession()
Per impostazione predefinita, una sessione viene costruita attorno al grafico predefinito. Per evitare di lasciare nodi morti nella sessione, è necessario controllare il grafico predefinito o utilizzare un grafico esplicito.
Per cancellare il grafico di default, è possibile utilizzare la funzione di tf.reset_default_graph.
tf.reset_default_graph() sess = tf.InteractiveSession()
È anche possibile costruire esplicitamente un grafico ed evitare di utilizzare quello predefinito. Se si utilizza un normale
Session
, sarà necessario creare completamente il grafico prima di costruire la sessione. PerInteractiveSession
, si può semplicemente dichiarare il grafico e utilizzarlo come un contesto di dichiarare ulteriori cambiamenti:g = tf.Graph() sess = tf.InteractiveSession(graph=g) with g.asdefault(): # Put variable declaration and other tf operation # in the graph context .... b = tf.matmul(A, x) .... sess.run([b], ...)
EDIT: Per le versioni recenti di tensorflow
(1.0+), la funzione corretta è g.as_default
.
Le celle di notebook IPython/Jupyter mantengono lo stato tra le corse di una cella.
Creare un grafico personalizzato:
def main():
# Define your model
data = tf.placeholder(...)
model = ...
with tf.Graph().as_default():
main()
ha funzionato una volta, il grafico viene ripulito.
- 1. Editor grafico dei nodi
- 2. Algoritmo grafico per molti nodi
- 3. grafico forza d3: nodi appiccicosi
- 4. Grafico boost: come copiare i nodi e i bordi di un grafico senza copiare le proprietà?
- 5. I grafici alti rimuovono i punti dal grafico a linee
- 6. Recupera i nodi connessi in un grafico NetworkX
- 7. Come estrarre i dati dal grafico matplotlib
- 8. Come rimuovere il bordo bianco dal grafico a torta HighCharts?
- 9. Tutti i percorsi tra 2 nodi nel grafico
- 10. Rimuovere le linee della griglia dal grafico Winforms
- 11. Come rimuovere la descrizione dal grafico in MPAndroidChart?
- 12. MarkerView esce dal grafico per l'ultimo punto del grafico
- 13. Differenza tra grafico, grafico e grafico
- 14. Creare impegna falsi dal grafico
- 15. Elimina proprietà dal grafico Neo4j
- 16. Come trovare tutti i nodi in un grafico equidistante da un determinato set di nodi?
- 17. Rimuovere un livello da un grafico ggplot2
- 18. Grafico
- 19. Rimuovere xticks in un grafico matplotlib?
- 20. Rimuovi descrizione comando hover dal grafico a torta di Google Visualization (grafico principale)
- 21. Jfreechart: come escludere i giorni del fine settimana dal grafico?
- 22. libreria Java grafico per la visualizzazione di rete da Grafico
- 23. AmCharts - Grafico a linee Contenitore grafico traboccante
- 24. JSON.NET come rimuovere i nodi
- 25. costi minimi dannosi sul grafico
- 26. d3.js Ottieni legenda fuori dal grafico
- 27. Visualizzazione grafico a grande scala (nodi 50K, bordi pesati 100M)
- 28. D3 Forza diretti grafico utilizzando testi invece di nodi
- 29. Disegna un grafico da un elenco di nodi connessi
- 30. Tre colonna grafico
In tensorflow> = 1.0, è 'g.as_default()' –
Ortografia: Nell'istruzione with hai dimenticato il carattere di sottolineatura in g.as_default() – user3750988
così felice di aver trovato questa risposta. mi sta facendo impazzire ... –