51 votes

Que fait tf.gfile dans TensorFlow ?

J'ai vu des gens utiliser plusieurs fonctions de tf.gfile como tf.gfile.GFile o tf.gfile.Exists . J'ai l'idée que tf.gfile traite des dossiers. Cependant, je n'ai pas réussi à trouver la documentation officielle pour voir ce qu'il offre d'autre.

Ce serait génial si vous pouviez m'aider.

47voto

user2476373 Points 91

Pour toute personne atterrissant ici, la réponse suivante a été fournie (par un googler) sur : Pourquoi utiliser tensorflow gfile ? (pour les E/S de fichiers)

Les principaux rôles du module tf.gfile sont :

  1. Pour fournir une API proche des objets fichiers de Python, et

  2. Fournir une mise en œuvre basée sur l'API de système de fichiers C++ de TensorFlow.

L'API C++ FileSystem prend en charge plusieurs implémentations de systèmes de fichiers, notamment les fichiers locaux, le stockage Google Cloud (à l'aide d'un fichier gs:// préfixe), et HDFS (en utilisant un hdfs:// préfixe). TensorFlow les exporte comme tf.gfile afin que vous puissiez utiliser ces implémentations pour sauvegarder et charger les points de contrôle, écrire les journaux TensorBoard et accéder aux formations. sauvegarder et charger les points de contrôle, écrire les journaux de TensorBoard et accéder à la formation. (entre autres). Cependant, si tous vos fichiers sont locaux, vous pouvez vous pouvez utiliser l'API de fichier Python ordinaire sans aucun problème.

0 votes

Je ne comprends toujours pas. Tu ne peux pas juste utiliser avec open(file_name, 'w') as f: ?

10 votes

@ChaineSanBuenaventura, oui vous pouvez. gfile est seulement nécessaire si vous souhaitez utiliser un système de fichiers moins conventionnel, tel que "google cloud storage".

0 votes

@Chaine Je pense qu'il est beaucoup plus facile d'utiliser tf.gfile si vous voulez déboguer votre modèle localement et l'entraîner sur le cloud. Dans ce cas, vous n'avez pas besoin de modifier une seule ligne.

2voto

drpng Points 1487

Comme vous le soulignez à juste titre tf.gfile est une abstraction pour accéder au système de fichiers et est documenté aquí . Elle est recommandée par rapport à l'utilisation de l'API python ordinaire car elle offre un certain niveau de portabilité.

4 votes

Je ne comprends toujours pas. Tu ne peux pas juste utiliser with open(file_name, 'w') as f: ? Qu'entendez-vous par un certain niveau de portabilité ?

0 votes

Selon l'usage que vous en faites, la documentation pertinente peut se trouver à l'adresse suivante tf.io.gfile

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X