Halaman ini diterjemahkan oleh Cloud Translation API.
Switch to English

tensorflow :: Cakupan

#include <scope.h>

Objek Scope mewakili sekumpulan operasi TensorFlow terkait yang memiliki properti yang sama seperti awalan nama umum.

Ringkasan

Objek Scope adalah container untuk properti TensorFlow Op. Konstruktor op mendapatkan objek Scope sebagai argumen pertama wajib dan op yang dibangun memperoleh properti dalam objek.

Contoh sederhana:

using namespace ops;
Scope root = Scope::NewRootScope();
auto c1 = Const(root, { {1, 1} });
auto m = MatMul(root, c1, { {41}, {1} });
GraphDef gdef;
Status s = root.ToGraphDef(&gdef);
if (!s.ok()) { ... }

Hierarki lingkup :

Kelas Scope menyediakan berbagai fungsi Dengan <> yang membuat cakupan baru. Cakupan baru biasanya memiliki satu properti yang diubah sementara properti lain diwarisi dari cakupan induk. Metode NewSubScope (nama) menambahkan name ke awalan nama untuk operasi yang dibuat dalam cakupan, dan WithOpName () mengubah sufiks yang jika tidak default ke jenis op.

Contoh nama:

Scope root = Scope::NewRootScope();
Scope linear = root.NewSubScope("linear");
// W will be named "linear/W"
auto W = Variable(linear.WithOpName("W"),
                  {2, 2}, DT_FLOAT);
// b will be named "linear/b_3"
int idx = 3;
auto b = Variable(linear.WithOpName("b_", idx),
                  {2}, DT_FLOAT);
auto x = Const(linear, {...});  // name: "linear/Const"
auto m = MatMul(linear, x, W);  // name: "linear/MatMul"
auto r = BiasAdd(linear, m, b); // name: "linear/BiasAdd"

Lingkup seumur hidup:

Cakupan baru dibuat dengan memanggil Scope :: NewRootScope . Ini membuat beberapa sumber daya yang digunakan bersama oleh semua cakupan turunan yang mewarisi dari cakupan ini, secara langsung atau transitif. Misalnya, cakupan baru membuat objek Grafik baru yang operasi ditambahkan saat cakupan baru atau turunannya digunakan oleh konstruktor Op. Cakupan baru juga memiliki objek Status yang akan digunakan untuk menunjukkan kesalahan oleh fungsi konstruktor Op yang dipanggil pada setiap cakupan anak. Fungsi Op-konstruktor harus memeriksa status cakupan dengan memanggil metode ok () sebelum melanjutkan untuk membangun op.

Keamanan benang:

Objek Scope TIDAK aman untuk thread. Thread tidak dapat secara bersamaan memanggil fungsi konstruktor-op pada objek Scope sama.

Pembangun dan Penghancur

Scope (const Scope & other)
~Scope ()

Fungsi publik

ClearColocation () const
Hapus semua kendala colocation.
ColocateWith (const Operation & op) const
Kembalikan cakupan baru.
ColocateWith (const Output & out) const
Fungsi kenyamanan di atas.
ExitOnError () const
Kembalikan cakupan baru.
GetCompositeOpScopes (const string & composite_op_name) const
GetUniqueNameForOp (const string & default_name) const
string
Kembalikan nama unik, menggunakan default_name jika nama op belum ditentukan.
NewSubScope (const string & child_scope_name) const
Kembalikan cakupan baru.
ToGraphDef (GraphDef *gdef) const
Jika status () adalah Status :: OK (), konversikan objek Graph yang disimpan dalam lingkup ini menjadi proto GraphDef dan kembalikan Status :: OK ().
UpdateStatus (const Status & s) const
void
Perbarui status pada cakupan ini.
WithAssignedDevice (const string & assigned_device) const
Mengembalikan cakupan baru.
WithControlDependencies (const gtl::ArraySlice< Operation > & control_deps) const
Kembalikan cakupan baru.
WithControlDependencies (const Output & control_dep) const
Sama seperti di atas, tetapi mudah untuk menambahkan ketergantungan kontrol pada operasi yang menghasilkan keluaran control_dep.
WithDevice (const string & device) const
Kembalikan cakupan baru.
WithKernelLabel (const string & kernel_label) const
Kembalikan cakupan baru.
WithNoControlDependencies () const
Kembalikan cakupan baru.
WithOpName (Ty... fragments) const
Kembalikan cakupan baru.
WithXlaCluster (const string & xla_cluster) const
Mengembalikan cakupan baru.
control_deps () const
const std::vector< Operation > &
graph () const
Graph *
graph_as_shared_ptr () const
std::shared_ptr< Graph >
ok () const
bool
operator= (const Scope & other)
Scope &
status () const

Fungsi statis publik

NewRootScope ()
Kembalikan cakupan baru.

Fungsi publik

ClearColocation

Scope ClearColocation() const 
.dll

Hapus semua kendala colocation.

ColocateWith

Scope ColocateWith(
  const Operation & op
) const 

Kembalikan cakupan baru.

Semua operasi yang dibuat dalam lingkup yang dikembalikan akan ditempatkan bersama di perangkat tempat operasi ditempatkan. CATATAN: Fungsi ini dimaksudkan untuk menggunakan perpustakaan internal hanya untuk mengontrol penempatan operasi pada perangkat. Penggunaan publik tidak dianjurkan karena penerapan penempatan perangkat dapat berubah.

ColocateWith

Scope ColocateWith(
  const Output & out
) const 

Fungsi kenyamanan di atas.

ExitOnError

Scope ExitOnError() const 

Kembalikan cakupan baru.

Fungsi op-konstruktor mengambil ruang lingkup yang dikembalikan karena argumen cakupan akan keluar segera setelah kesalahan terdeteksi, alih-alih menyetel status pada cakupan.

GetCompositeOpScopes

CompositeOpScopes GetCompositeOpScopes(
  const string & composite_op_name
) const 
.dll

GetUniqueNameForOp

string GetUniqueNameForOp(
  const string & default_name
) const 

Kembalikan nama unik, menggunakan default_name jika nama op belum ditentukan.

NewSubScope

Scope NewSubScope(
  const string & child_scope_name
) const 

Kembalikan cakupan baru.

Operasi yang dibuat dengan cakupan ini akan memiliki name/child_scope_name sebagai awalan. Nama sebenarnya akan unik dalam cakupan saat ini. Semua properti lainnya diwarisi dari cakupan saat ini. Jika child_scope_name kosong, / dieliminasi.

Cakupan

 Scope(
  const Scope & other
)

ToGraphDef

Status ToGraphDef(
  GraphDef *gdef
) const 

Jika status () adalah Status :: OK (), konversikan objek Graph yang disimpan dalam lingkup ini menjadi proto GraphDef dan kembalikan Status :: OK ().

Jika tidak, kembalikan status kesalahan apa adanya tanpa melakukan konversi GraphDef.

Memperbaharui status

void UpdateStatus(
  const Status & s
) const 

Perbarui status pada cakupan ini.

Catatan: Objek status dibagikan di antara semua turunan dari cakupan ini. Jika status yang dihasilkan bukan Status :: OK () dan exit_on_error_ disetel pada lingkup ini, fungsi ini keluar dengan memanggil LOG (FATAL).

WithAssignedDevice

Scope WithAssignedDevice(
  const string & assigned_device
) const 

Mengembalikan cakupan baru.

Semua operasi yang dibuat dalam lingkup yang dikembalikan akan memiliki perangkat yang ditetapkan ke assigned_device .

WithControlDependencies

Scope WithControlDependencies(
  const gtl::ArraySlice< Operation > & control_deps
) const 

Kembalikan cakupan baru.

Semua operasi yang dibuat dalam lingkup yang dikembalikan akan memiliki dependensi kontrol, gabungan operasi dalam vektor control_deps dan dependensi kontrol dari cakupan saat ini.

WithControlDependencies

Scope WithControlDependencies(
  const Output & control_dep
) const 

Sama seperti di atas, tetapi mudah untuk menambahkan ketergantungan kontrol pada operasi yang menghasilkan keluaran control_dep.

WithDevice

Scope WithDevice(
  const string & device
) const 

Kembalikan cakupan baru.

Semua operasi yang dibuat dalam lingkup yang dikembalikan akan memiliki bidang perangkat disetel ke 'perangkat'.

WithKernelLabel

Scope WithKernelLabel(
  const string & kernel_label
) const 

Kembalikan cakupan baru.

Semua operasi yang dibuat dengan lingkup baru akan memiliki label_kernel sebagai nilai untuk atribut '_kernel';

WithNoControlDependencies

Scope WithNoControlDependencies() const 

Kembalikan cakupan baru.

Semua operasi yang dibuat dalam lingkup yang dikembalikan tidak akan memiliki ketergantungan kontrol pada operasi lain.

WithOpName

Scope WithOpName(
  Ty... fragments
) const 

Kembalikan cakupan baru.

Semua operasi yang dibuat dalam lingkup yang dikembalikan akan memiliki nama dalam bentuk name/StrCat(fragments...)[_suffix]

WithXlaCluster

Scope WithXlaCluster(
  const string & xla_cluster
) const 

Mengembalikan cakupan baru.

Semua operasi yang dibuat dalam lingkup yang dikembalikan akan memiliki atribut _XlaCluster mereka disetel ke xla_cluster .

control_deps

const std::vector< Operation > & control_deps() const 

grafik

Graph * graph() const 

graph_as_shared_ptr

std::shared_ptr< Graph > graph_as_shared_ptr() const 

baik

bool ok() const 

operator =

Scope & operator=(
  const Scope & other
)

status

Status status() const 

~ Cakupan

 ~Scope()

Fungsi statis publik

NewRootScope

Scope NewRootScope()

Kembalikan cakupan baru.

Ini membuat grafik baru dan semua operasi yang dibangun dalam grafik ini harus menggunakan objek yang dikembalikan sebagai cakupan "root".