Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

tf.compat.v1.get_variable

Lihat sumber di GitHub

Mendapat variabel yang ada dengan parameter ini atau membuat yang baru.

Fungsi ini prefiks nama dengan variabel lingkup saat ini dan melakukan menggunakan kembali pemeriksaan. Lihat Ruang Lingkup Variabel Cara untuk penjelasan lengkap tentang bagaimana menggunakan kembali bekerja. Berikut ini adalah contoh dasar:

 def foo():
  with tf.variable_scope("foo", reuse=tf.AUTO_REUSE):
    v = tf.get_variable("v", [1])
  return v

v1 = foo()  # Creates v.
v2 = foo()  # Gets the same, existing v.
assert v1 == v2
 

Jika initializer adalah None (default), default initializer lulus dalam lingkup variabel akan digunakan. Jika salah satu yang None juga, glorot_uniform_initializer akan digunakan. initializer juga bisa menjadi Tensor, dalam hal variabel diinisialisasi dengan nilai ini dan bentuk.

Demikian pula, jika regularizer adalah None (default), yang regularizer standar lulus dalam lingkup variabel akan digunakan (jika itu None juga, maka secara default tidak regularisasi dilakukan).

Jika partitioner disediakan, sebuah PartitionedVariable dikembalikan. Mengakses objek ini sebagai Tensor mengembalikan pecahan bersambung sepanjang sumbu partisi.

Beberapa partitioners berguna yang tersedia. Lihat, misalnya, variable_axis_size_partitioner dan min_max_variable_partitioner .

name Nama variabel baru atau yang sudah ada.
shape Bentuk dari variabel baru atau yang sudah ada.
dtype Ketik variabel baru atau yang sudah ada (default ke DT_FLOAT ).
initializer Initializer untuk variabel jika dibuat. Dapat menjadi obyek initializer atau Tensor. Jika itu adalah Tensor, bentuknya harus diketahui kecuali validate_shape adalah False.
regularizer A (Tensor -> Tensor atau Tidak) fungsi; hasil menerapkannya pada variabel baru dibuat akan ditambahkan ke koleksi tf.GraphKeys.REGULARIZATION_LOSSES dan dapat digunakan untuk regularisasi.
trainable Jika True juga menambahkan variabel untuk koleksi grafik GraphKeys.TRAINABLE_VARIABLES (lihat tf.Variable ).
collections Daftar kunci koleksi grafik untuk menambahkan Variable untuk. Default [GraphKeys.GLOBAL_VARIABLES] (lihat tf.Variable ).
caching_device Opsional tali perangkat atau fungsi yang menjelaskan di mana Variabel yang harus di-cache untuk membaca. Default untuk perangkat Variabel ini. Jika tidak None , cache pada perangkat lain. Penggunaan yang khas adalah untuk cache pada perangkat mana Ops menggunakan Berada Variabel, untuk menghapus duplikat menyalin melalui Switch dan pernyataan bersyarat lainnya.
partitioner Callable opsional yang menerima sepenuhnya didefinisikan TensorShape dan dtype dari Variabel yang akan dibuat, dan mengembalikan daftar partisi untuk setiap sumbu (saat ini hanya satu sumbu dapat dipartisi).
validate_shape Jika False, memungkinkan variabel yang akan diinisialisasi dengan nilai bentuk yang tidak diketahui. Jika Benar, default, bentuk initial_value harus diketahui. Untuk ini digunakan initializer harus menjadi Tensor dan bukan obyek initializer.
use_resource Jika False, menciptakan Variabel biasa. Jika benar, menciptakan ResourceVariable eksperimental bukan dengan semantik yang terdefinisi dengan baik. Default False (kemudian akan berubah menjadi True). Ketika eksekusi bersemangat diaktifkan argumen ini selalu dipaksa untuk menjadi Benar.
custom_getter yang callable mengambil sebagai argumen pertama pengambil benar, dan memungkinkan Timpa metode get_variable internal. Tanda tangan dari custom_getter harus cocok dengan metode ini, namun versi yang paling masa depan-bukti akan memungkinkan untuk perubahan: def custom_getter(getter, *args, **kwargs) . Akses langsung ke semua get_variable parameter juga diperbolehkan: def custom_getter(getter, name, *args, **kwargs) . Identitas sederhana kustom getter yang hanya menciptakan variabel dengan nama yang dimodifikasi adalah:

 def custom_getter(getter, name, *args, **kwargs):
return getter(name + '_suffix', *args, **kwargs)
 

constraint Fungsi proyeksi opsional untuk diterapkan ke variabel setelah diperbarui oleh Optimizer (misalnya digunakan untuk mengimplementasikan kendala norma atau kendala nilai untuk lapisan bobot). Fungsi harus mengambil sebagai masukan Tensor unprojected mewakili nilai variabel dan mengembalikan Tensor untuk nilai proyeksi (yang harus memiliki bentuk yang sama). Kendala tidak aman untuk digunakan saat melakukan pelatihan didistribusikan asynchronous.
synchronization Menunjukkan ketika didistribusikan variabel akan digabungkan. Nilai-nilai yang diterima adalah konstanta didefinisikan di kelas tf.VariableSynchronization . Secara default sinkronisasi diatur ke AUTO dan saat DistributionStrategy lagi memilih kapan harus melakukan sinkronisasi.
aggregation Menunjukkan bagaimana variabel terdistribusi akan digabungkan. Nilai-nilai yang diterima adalah konstanta didefinisikan di kelas tf.VariableAggregation .

The dibuat atau yang ada Variable (atau PartitionedVariable , jika partitioner seorang digunakan).

ValueError saat membuat variabel baru dan bentuk tidak dideklarasikan, ketika melanggar reuse selama pembuatan variabel, atau ketika initializer dtype dan dtype tidak cocok. Reuse diatur dalam variable_scope .