Operasi mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor.
Catatan: API ini dirancang untuk ortogonalitas daripada ramah manusia. Ini dapat digunakan untuk mengurai input proto dengan tangan, tetapi dimaksudkan untuk digunakan dalam kode yang dihasilkan.
Operasi `decode_proto` mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor. Kolom dalam `field_names` didekode dan dikonversi ke `output_types` yang sesuai jika memungkinkan.
Nama `message_type` harus diberikan untuk memberikan konteks bagi nama bidang. Deskriptor pesan yang sebenarnya dapat dicari baik di kumpulan deskriptor yang ditautkan atau nama file yang disediakan oleh pemanggil menggunakan atribut `descriptor_source`.
Setiap tensor keluaran adalah tensor padat. Ini berarti bahwa itu empuk untuk menampung jumlah elemen berulang terbesar yang terlihat di minibatch input. (Bentuknya juga dilapisi oleh satu untuk mencegah dimensi berukuran nol). Jumlah pengulangan sebenarnya untuk setiap contoh dalam minibatch dapat ditemukan di output `sizes`. Dalam banyak kasus, output `decode_proto` langsung dimasukkan ke tf.squeeze jika nilai yang hilang tidak menjadi masalah. Saat menggunakan tf.squeeze, selalu berikan dimensi pemerasan secara eksplisit untuk menghindari kejutan.
Untuk sebagian besar, pemetaan antara tipe bidang Proto dan tipe d TensorFlow sangat mudah. Namun, ada beberapa kasus khusus:
- Bidang proto yang berisi subpesan atau grup hanya dapat dikonversi ke `DT_STRING` (subpesan bersambung). Ini untuk mengurangi kompleksitas API. String yang dihasilkan dapat digunakan sebagai input ke instance lain dari operasi decode_proto.
- TensorFlow tidak memiliki dukungan untuk bilangan bulat yang tidak ditandatangani. Operasi mewakili tipe uint64 sebagai `DT_INT64` dengan pola bit dua-pelengkap yang sama (cara yang jelas). Nilai int32 yang tidak ditandatangani dapat direpresentasikan secara tepat dengan menentukan tipe `DT_INT64`, atau menggunakan pelengkap dua kali jika pemanggil menetapkan `DT_INT32` dalam atribut `output_types`.
- Bidang `peta` tidak langsung diterjemahkan. Mereka diperlakukan sebagai bidang `berulang`, dari jenis entri yang sesuai. Proto-compiler mendefinisikan tipe entri untuk setiap bidang peta. Type-name adalah nama field, dikonversi menjadi "CamelCase" dengan "Entry" ditambahkan. Pesan tf.train.Features.FeatureEntry
adalah contoh dari salah satu tipe `Entry` implisit ini.
- Bidang `enum` harus dibaca sebagai int32.
Serialisasi proto biner dan teks didukung, dan dapat dipilih menggunakan atribut `format`.
Atribut `descriptor_source` memilih sumber deskriptor protokol untuk berkonsultasi saat mencari `message_type`. Ini mungkin:
- String kosong atau "local://", dalam hal ini deskriptor protokol dibuat untuk definisi proto C++ (bukan Python) yang ditautkan ke biner.
- File, di mana deskriptor protokol dibuat dari file, yang diharapkan berisi `FileDescriptorSet` yang diserialisasi sebagai string. CATATAN: Anda dapat membuat file `descriptor_source` menggunakan opsi `--descriptor_set_out` dan `--include_imports` ke kompiler protokol `protoc`.
- Sebuah "byte://
Kelas Bersarang
kelas | DecodeProto.Options | Atribut opsional untuk DecodeProto |
Metode Publik
DecodeProto statis | |
DecodeProto.Options statis | descriptorSource (Sumber descriptor String) |
DecodeProto.Options statis | format pesan (Format pesan string) |
DecodeProto.Options statis | membersihkan (Boolean membersihkan) |
Keluaran <Bilangan Bulat> | ukuran () Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. |
Daftar< Keluaran <?>> | nilai () Daftar tensor yang berisi nilai untuk bidang terkait. |
Metode yang Diwarisi
Metode Publik
publik static DecodeProto membuat ( Lingkup lingkup, Operand <String> byte, String messageType, List<String> fieldNames, List<Class<?>> outputTypes, Opsi... opsi)
Metode pabrik untuk membuat kelas yang membungkus operasi DecodeProto baru.
Parameter
cakupan | lingkup saat ini |
---|---|
byte | Tensor dari proto serial dengan bentuk `batch_shape`. |
jenis pesan | Nama jenis pesan proto yang akan didekode. |
nama bidang | Daftar string yang berisi nama bidang proto. Bidang ekstensi dapat didekodekan dengan menggunakan nama lengkapnya, misalnya EXT_PACKAGE.EXT_FIELD_NAME. |
jenis keluaran | Daftar jenis TF yang akan digunakan untuk masing-masing bidang di field_names. |
pilihan | membawa nilai atribut opsional |
Kembali
- contoh baru DecodeProto
DecodeProto.Options descriptorSource statis publik (String descriptorSource)
Parameter
deskriptorSumber | Baik nilai khusus `local://` atau jalur ke file yang berisi `FileDescriptorSet` berseri. |
---|
public static DecodeProto.Options messageFormat (String messageFormat)
Parameter
format pesan | Baik `biner` atau text . |
---|
DecodeProto.Options publik statis sanitize (Boolean sanitize)
Parameter
membersihkan | Apakah akan membersihkan hasilnya atau tidak. |
---|
Output publik <Integer> ukuran ()
Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. Setiap entri adalah jumlah nilai yang ditemukan untuk bidang yang sesuai. Bidang opsional mungkin memiliki 0 atau 1 nilai.
Daftar publik< Output <?>> nilai ()
Daftar tensor yang berisi nilai untuk bidang terkait. `values[i]` memiliki tipe data `output_types[i]` dan bentuk `[batch_shape, max(sizes[...,i])]`.
Operasi mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor.
Catatan: API ini dirancang untuk ortogonalitas daripada ramah manusia. Ini dapat digunakan untuk mengurai input proto dengan tangan, tetapi dimaksudkan untuk digunakan dalam kode yang dihasilkan.
Operasi `decode_proto` mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor. Kolom dalam `field_names` didekode dan dikonversi ke `output_types` yang sesuai jika memungkinkan.
Nama `message_type` harus diberikan untuk memberikan konteks bagi nama bidang. Deskriptor pesan yang sebenarnya dapat dicari baik di kumpulan deskriptor yang ditautkan atau nama file yang disediakan oleh pemanggil menggunakan atribut `descriptor_source`.
Setiap tensor keluaran adalah tensor padat. Ini berarti bahwa itu empuk untuk menampung jumlah elemen berulang terbesar yang terlihat di minibatch input. (Bentuknya juga dilapisi oleh satu untuk mencegah dimensi berukuran nol). Jumlah pengulangan sebenarnya untuk setiap contoh dalam minibatch dapat ditemukan di output `sizes`. Dalam banyak kasus, output `decode_proto` langsung dimasukkan ke tf.squeeze jika nilai yang hilang tidak menjadi masalah. Saat menggunakan tf.squeeze, selalu berikan dimensi pemerasan secara eksplisit untuk menghindari kejutan.
Untuk sebagian besar, pemetaan antara tipe bidang Proto dan tipe d TensorFlow sangat mudah. Namun, ada beberapa kasus khusus:
- Bidang proto yang berisi subpesan atau grup hanya dapat dikonversi ke `DT_STRING` (subpesan bersambung). Ini untuk mengurangi kompleksitas API. String yang dihasilkan dapat digunakan sebagai input ke instance lain dari operasi decode_proto.
- TensorFlow tidak memiliki dukungan untuk bilangan bulat yang tidak ditandatangani. Operasi mewakili tipe uint64 sebagai `DT_INT64` dengan pola bit dua-pelengkap yang sama (cara yang jelas). Nilai int32 yang tidak ditandatangani dapat direpresentasikan secara tepat dengan menentukan tipe `DT_INT64`, atau menggunakan pelengkap dua kali jika pemanggil menetapkan `DT_INT32` dalam atribut `output_types`.
- Bidang `peta` tidak langsung diterjemahkan. Mereka diperlakukan sebagai bidang `berulang`, dari jenis entri yang sesuai. Proto-compiler mendefinisikan tipe entri untuk setiap bidang peta. Type-name adalah nama field, dikonversi menjadi "CamelCase" dengan "Entry" ditambahkan. Pesan tf.train.Features.FeatureEntry
adalah contoh dari salah satu tipe `Entry` implisit ini.
- Bidang `enum` harus dibaca sebagai int32.
Serialisasi proto biner dan teks didukung, dan dapat dipilih menggunakan atribut `format`.
Atribut `descriptor_source` memilih sumber deskriptor protokol untuk berkonsultasi saat mencari `message_type`. Ini mungkin:
- String kosong atau "local://", dalam hal ini deskriptor protokol dibuat untuk definisi proto C++ (bukan Python) yang ditautkan ke biner.
- File, di mana deskriptor protokol dibuat dari file, yang diharapkan berisi `FileDescriptorSet` yang diserialisasi sebagai string. CATATAN: Anda dapat membuat file `descriptor_source` menggunakan opsi `--descriptor_set_out` dan `--include_imports` ke kompiler protokol `protoc`.
- Sebuah "byte://
Kelas Bersarang
kelas | DecodeProto.Options | Atribut opsional untuk DecodeProto |
Metode Publik
DecodeProto statis | |
DecodeProto.Options statis | descriptorSource (Sumber descriptor String) |
DecodeProto.Options statis | format pesan (Format pesan string) |
DecodeProto.Options statis | membersihkan (Boolean membersihkan) |
Keluaran <Bilangan Bulat> | ukuran () Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. |
Daftar< Keluaran <?>> | nilai () Daftar tensor yang berisi nilai untuk bidang terkait. |
Metode yang Diwarisi
Metode Publik
publik static DecodeProto membuat ( Lingkup lingkup, Operand <String> byte, String messageType, List<String> fieldNames, List<Class<?>> outputTypes, Opsi... opsi)
Metode pabrik untuk membuat kelas yang membungkus operasi DecodeProto baru.
Parameter
cakupan | lingkup saat ini |
---|---|
byte | Tensor dari proto serial dengan bentuk `batch_shape`. |
jenis pesan | Nama jenis pesan proto yang akan didekode. |
nama bidang | Daftar string yang berisi nama bidang proto. Bidang ekstensi dapat didekodekan dengan menggunakan nama lengkapnya, misalnya EXT_PACKAGE.EXT_FIELD_NAME. |
jenis keluaran | Daftar jenis TF yang akan digunakan untuk masing-masing bidang di field_names. |
pilihan | membawa nilai atribut opsional |
Kembali
- contoh baru DecodeProto
DecodeProto.Options descriptorSource statis publik (String descriptorSource)
Parameter
deskriptorSumber | Baik nilai khusus `local://` atau jalur ke file yang berisi `FileDescriptorSet` berseri. |
---|
public static DecodeProto.Options messageFormat (String messageFormat)
Parameter
format pesan | Baik `biner` atau text . |
---|
DecodeProto.Options publik statis sanitize (Boolean sanitize)
Parameter
membersihkan | Apakah akan membersihkan hasilnya atau tidak. |
---|
Output publik <Integer> ukuran ()
Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. Setiap entri adalah jumlah nilai yang ditemukan untuk bidang yang sesuai. Bidang opsional mungkin memiliki 0 atau 1 nilai.
Daftar publik< Output <?>> nilai ()
Daftar tensor yang berisi nilai untuk bidang terkait. `values[i]` memiliki tipe data `output_types[i]` dan bentuk `[batch_shape, max(sizes[...,i])]`.
Operasi mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor.
Catatan: API ini dirancang untuk ortogonalitas daripada ramah manusia. Ini dapat digunakan untuk mengurai input proto dengan tangan, tetapi dimaksudkan untuk digunakan dalam kode yang dihasilkan.
Operasi `decode_proto` mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor. Kolom dalam `field_names` didekode dan dikonversi ke `output_types` yang sesuai jika memungkinkan.
Nama `message_type` harus diberikan untuk memberikan konteks bagi nama bidang. Deskriptor pesan yang sebenarnya dapat dicari baik di kumpulan deskriptor yang ditautkan atau nama file yang disediakan oleh pemanggil menggunakan atribut `descriptor_source`.
Setiap tensor keluaran adalah tensor padat. Ini berarti bahwa itu empuk untuk menampung jumlah elemen berulang terbesar yang terlihat di minibatch input. (Bentuknya juga dilapisi oleh satu untuk mencegah dimensi berukuran nol). Jumlah pengulangan sebenarnya untuk setiap contoh dalam minibatch dapat ditemukan di output `sizes`. Dalam banyak kasus, output `decode_proto` langsung dimasukkan ke tf.squeeze jika nilai yang hilang tidak menjadi masalah. Saat menggunakan tf.squeeze, selalu berikan dimensi pemerasan secara eksplisit untuk menghindari kejutan.
Untuk sebagian besar, pemetaan antara tipe bidang Proto dan tipe d TensorFlow sangat mudah. Namun, ada beberapa kasus khusus:
- Bidang proto yang berisi subpesan atau grup hanya dapat dikonversi ke `DT_STRING` (subpesan bersambung). Ini untuk mengurangi kompleksitas API. String yang dihasilkan dapat digunakan sebagai input ke instance lain dari operasi decode_proto.
- TensorFlow tidak memiliki dukungan untuk bilangan bulat yang tidak ditandatangani. Operasi mewakili tipe uint64 sebagai `DT_INT64` dengan pola bit dua-pelengkap yang sama (cara yang jelas). Nilai int32 yang tidak ditandatangani dapat direpresentasikan secara tepat dengan menentukan tipe `DT_INT64`, atau menggunakan pelengkap dua kali jika pemanggil menetapkan `DT_INT32` dalam atribut `output_types`.
- Bidang `peta` tidak langsung diterjemahkan. Mereka diperlakukan sebagai bidang `berulang`, dari jenis entri yang sesuai. Proto-compiler mendefinisikan tipe entri untuk setiap bidang peta. Type-name adalah nama field, dikonversi menjadi "CamelCase" dengan "Entry" ditambahkan. Pesan tf.train.Features.FeatureEntry
adalah contoh dari salah satu tipe `Entry` implisit ini.
- Bidang `enum` harus dibaca sebagai int32.
Serialisasi proto biner dan teks didukung, dan dapat dipilih menggunakan atribut `format`.
Atribut `descriptor_source` memilih sumber deskriptor protokol untuk berkonsultasi saat mencari `message_type`. Ini mungkin:
- String kosong atau "local://", dalam hal ini deskriptor protokol dibuat untuk definisi proto C++ (bukan Python) yang ditautkan ke biner.
- File, di mana deskriptor protokol dibuat dari file, yang diharapkan berisi `FileDescriptorSet` yang diserialisasi sebagai string. CATATAN: Anda dapat membuat file `descriptor_source` menggunakan opsi `--descriptor_set_out` dan `--include_imports` ke kompiler protokol `protoc`.
- Sebuah "byte://
Kelas Bersarang
kelas | DecodeProto.Options | Atribut opsional untuk DecodeProto |
Metode Publik
DecodeProto statis | |
DecodeProto.Options statis | descriptorSource (Sumber descriptor String) |
DecodeProto.Options statis | format pesan (Format pesan string) |
DecodeProto.Options statis | membersihkan (Boolean membersihkan) |
Keluaran <Bilangan Bulat> | ukuran () Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. |
Daftar< Keluaran <?>> | nilai () Daftar tensor yang berisi nilai untuk bidang terkait. |
Metode yang Diwarisi
Metode Publik
publik static DecodeProto membuat ( Lingkup lingkup, Operand <String> byte, String messageType, List<String> fieldNames, List<Class<?>> outputTypes, Opsi... opsi)
Metode pabrik untuk membuat kelas yang membungkus operasi DecodeProto baru.
Parameter
cakupan | lingkup saat ini |
---|---|
byte | Tensor dari proto serial dengan bentuk `batch_shape`. |
jenis pesan | Nama jenis pesan proto yang akan didekode. |
nama bidang | Daftar string yang berisi nama bidang proto. Bidang ekstensi dapat didekodekan dengan menggunakan nama lengkapnya, misalnya EXT_PACKAGE.EXT_FIELD_NAME. |
jenis keluaran | Daftar jenis TF yang akan digunakan untuk masing-masing bidang di field_names. |
pilihan | membawa nilai atribut opsional |
Kembali
- contoh baru DecodeProto
DecodeProto.Options descriptorSource statis publik (String descriptorSource)
Parameter
deskriptorSumber | Baik nilai khusus `local://` atau jalur ke file yang berisi `FileDescriptorSet` berseri. |
---|
public static DecodeProto.Options messageFormat (String messageFormat)
Parameter
format pesan | Baik `biner` atau text . |
---|
DecodeProto.Options publik statis sanitize (Boolean sanitize)
Parameter
membersihkan | Apakah akan membersihkan hasilnya atau tidak. |
---|
Output publik <Integer> ukuran ()
Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. Setiap entri adalah jumlah nilai yang ditemukan untuk bidang yang sesuai. Bidang opsional mungkin memiliki 0 atau 1 nilai.
Daftar publik< Output <?>> nilai ()
Daftar tensor yang berisi nilai untuk bidang terkait. `values[i]` memiliki tipe data `output_types[i]` dan bentuk `[batch_shape, max(sizes[...,i])]`.
Operasi mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor.
Catatan: API ini dirancang untuk ortogonalitas daripada ramah manusia. Ini dapat digunakan untuk mengurai input proto dengan tangan, tetapi dimaksudkan untuk digunakan dalam kode yang dihasilkan.
Operasi `decode_proto` mengekstrak bidang dari pesan buffering protokol serial ke dalam tensor. Kolom dalam `field_names` didekode dan dikonversi ke `output_types` yang sesuai jika memungkinkan.
Nama `message_type` harus diberikan untuk memberikan konteks bagi nama bidang. Deskriptor pesan yang sebenarnya dapat dicari baik di kumpulan deskriptor yang ditautkan atau nama file yang disediakan oleh pemanggil menggunakan atribut `descriptor_source`.
Setiap tensor keluaran adalah tensor padat. Ini berarti bahwa itu empuk untuk menampung jumlah elemen berulang terbesar yang terlihat di minibatch input. (Bentuknya juga dilapisi oleh satu untuk mencegah dimensi berukuran nol). Jumlah pengulangan sebenarnya untuk setiap contoh dalam minibatch dapat ditemukan di output `sizes`. Dalam banyak kasus, output `decode_proto` langsung dimasukkan ke tf.squeeze jika nilai yang hilang tidak menjadi masalah. Saat menggunakan tf.squeeze, selalu berikan dimensi pemerasan secara eksplisit untuk menghindari kejutan.
Untuk sebagian besar, pemetaan antara tipe bidang Proto dan tipe d TensorFlow sangat mudah. Namun, ada beberapa kasus khusus:
- Bidang proto yang berisi subpesan atau grup hanya dapat dikonversi ke `DT_STRING` (subpesan bersambung). Ini untuk mengurangi kompleksitas API. String yang dihasilkan dapat digunakan sebagai input ke instance lain dari operasi decode_proto.
- TensorFlow tidak memiliki dukungan untuk bilangan bulat yang tidak ditandatangani. Operasi mewakili tipe uint64 sebagai `DT_INT64` dengan pola bit dua-pelengkap yang sama (cara yang jelas). Nilai int32 yang tidak ditandatangani dapat direpresentasikan secara tepat dengan menentukan tipe `DT_INT64`, atau menggunakan pelengkap dua kali jika pemanggil menetapkan `DT_INT32` dalam atribut `output_types`.
- Bidang `peta` tidak langsung diterjemahkan. Mereka diperlakukan sebagai bidang `berulang`, dari jenis entri yang sesuai. Proto-compiler mendefinisikan tipe entri untuk setiap bidang peta. Type-name adalah nama field, dikonversi menjadi "CamelCase" dengan "Entry" ditambahkan. Pesan tf.train.Features.FeatureEntry
adalah contoh dari salah satu tipe `Entry` implisit ini.
- Bidang `enum` harus dibaca sebagai int32.
Serialisasi proto biner dan teks didukung, dan dapat dipilih menggunakan atribut `format`.
Atribut `descriptor_source` memilih sumber deskriptor protokol untuk berkonsultasi saat mencari `message_type`. Ini mungkin:
- String kosong atau "local://", dalam hal ini deskriptor protokol dibuat untuk definisi proto C++ (bukan Python) yang ditautkan ke biner.
- File, di mana deskriptor protokol dibuat dari file, yang diharapkan berisi `FileDescriptorSet` yang diserialisasi sebagai string. CATATAN: Anda dapat membuat file `descriptor_source` menggunakan opsi `--descriptor_set_out` dan `--include_imports` ke kompiler protokol `protoc`.
- Sebuah "byte://
Kelas Bersarang
kelas | DecodeProto.Options | Atribut opsional untuk DecodeProto |
Metode Publik
DecodeProto statis | |
DecodeProto.Options statis | descriptorSource (Sumber descriptor String) |
DecodeProto.Options statis | format pesan (Format pesan string) |
DecodeProto.Options statis | membersihkan (Boolean membersihkan) |
Keluaran <Bilangan Bulat> | ukuran () Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. |
Daftar< Keluaran <?>> | nilai () Daftar tensor yang berisi nilai untuk bidang terkait. |
Metode yang Diwarisi
Metode Publik
publik static DecodeProto membuat ( Lingkup lingkup, Operand <String> byte, String messageType, List<String> fieldNames, List<Class<?>> outputTypes, Opsi... opsi)
Metode pabrik untuk membuat kelas yang membungkus operasi DecodeProto baru.
Parameter
cakupan | lingkup saat ini |
---|---|
byte | Tensor dari proto serial dengan bentuk `batch_shape`. |
jenis pesan | Nama jenis pesan proto yang akan didekode. |
nama bidang | Daftar string yang berisi nama bidang proto. Bidang ekstensi dapat didekodekan dengan menggunakan nama lengkapnya, misalnya EXT_PACKAGE.EXT_FIELD_NAME. |
jenis keluaran | Daftar jenis TF yang akan digunakan untuk masing-masing bidang di field_names. |
pilihan | membawa nilai atribut opsional |
Kembali
- contoh baru DecodeProto
DecodeProto.Options descriptorSource statis publik (String descriptorSource)
Parameter
deskriptorSumber | Baik nilai khusus `local://` atau jalur ke file yang berisi `FileDescriptorSet` berseri. |
---|
public static DecodeProto.Options messageFormat (String messageFormat)
Parameter
format pesan | Baik `biner` atau text . |
---|
DecodeProto.Options publik statis sanitize (Boolean sanitize)
Parameter
membersihkan | Apakah akan membersihkan hasilnya atau tidak. |
---|
Output publik <Integer> ukuran ()
Tensor int32 dengan bentuk `[batch_shape, len(field_names)]`. Setiap entri adalah jumlah nilai yang ditemukan untuk bidang yang sesuai. Bidang opsional mungkin memiliki 0 atau 1 nilai.
Daftar publik< Output <?>> nilai ()
Daftar tensor yang berisi nilai untuk bidang terkait. `values[i]` memiliki tipe data `output_types[i]` dan bentuk `[batch_shape, max(sizes[...,i])]`.