Étant donné que les calculs Tensor se composent de graphiques, il est préférable d'interpréter les deux en termes de graphiques.
Prenons par exemple la régression linéaire simple
WX+B=Y
où W
et B
pour les poids et biais et X
pour les entrées des observations et Y
pour les sorties des observations.
Evidemment X
et Y
sont de même nature (variables manifestes) qui diffèrent de celle de W
et B
(variables latentes). X
et Y
sont des valeurs des échantillons (observations) et ont donc besoin d'une place à remplir , tandis que W
et B
sont les poids et les biais, les variables (les valeurs précédentes affectent ces dernières) dans le graphique qui doivent être entraînées à l'aide de différents X
et de Y
paires. Nous plaçons différents échantillons dans les espaces réservés pour former les variables .
Nous avons seulement besoin d' enregistrer ou de restaurer les variables (aux points de contrôle) pour enregistrer ou reconstruire le graphique avec le code.
Les espaces réservés sont principalement des détenteurs pour les différents ensembles de données (par exemple des données de formation ou des données de test). Cependant, les variables sont formées au processus de formation pour les tâches spécifiques, c'est-à-dire pour prédire le résultat de l'entrée ou mapper les entrées aux étiquettes souhaitées. Ils restent les mêmes jusqu'à ce que vous réentraîniez ou affiniez le modèle en utilisant des échantillons différents ou identiques à remplir dans les espaces réservés souvent via le dict. Par exemple:
session.run(a_graph, dict = {a_placeholder_name : sample_values})
Les espaces réservés sont également passés en tant que paramètres pour définir des modèles.
Si vous modifiez des espaces réservés (ajoutez, supprimez, modifiez la forme, etc.) d'un modèle au milieu de la formation, vous pouvez toujours recharger le point de contrôle sans aucune autre modification. Mais si les variables d'un modèle enregistré sont modifiées, vous devez ajuster le point de contrôle en conséquence pour le recharger et continuer la formation (toutes les variables définies dans le graphique doivent être disponibles dans le point de contrôle).
Pour résumer, si les valeurs proviennent des échantillons (observations que vous avez déjà), vous créez en toute sécurité un espace réservé pour les conserver, tandis que si vous avez besoin d'un paramètre pour être formé, exploitez une variable (mettez simplement, définissez les variables pour les valeurs que vous voulez pour utiliser TF automatiquement).
Dans certains modèles intéressants, comme un modèle de transfert de style , les pixels d'entrée vont être optimisés et les variables de modèle normalement appelées sont fixes, alors nous devrions faire de l'entrée (généralement initialisée au hasard) en tant que variable implémentée dans ce lien.
Pour plus d'informations, veuillez vous référer à ce document simple et illustrant .
Variable
s, mais pas àplaceholder
s (dont les valeurs doivent toujours être fournies).