tensorflow :: ops :: UnicodeTranscode
#include <string_ops.h>
Transcode teks input dari pengkodean sumber ke pengkodean tujuan.
Ringkasan
Input adalah tensor string dalam bentuk apa pun. Keluarannya adalah tensor string dengan bentuk yang sama yang berisi string yang ditranskode. String keluaran selalu merupakan unicode yang valid. Jika masukan berisi posisi pengkodean yang tidak valid, atribut errors
menyetel kebijakan tentang cara menanganinya. Jika kebijakan penanganan kesalahan default digunakan, pemformatan yang tidak valid akan diganti dalam output oleh replacement_char
. Jika kebijakan kesalahan ignore
, setiap posisi pengkodean yang tidak valid dalam masukan akan dilewati dan tidak disertakan dalam keluaran. Jika disetel ke strict
maka pemformatan apa pun yang tidak valid akan menghasilkan kesalahan InvalidArgument.
Operasi ini bisa digunakan dengan output_encoding = input_encoding
untuk memaksakan pemformatan yang benar untuk input meskipun sudah dalam encoding yang diinginkan.
Jika input diawali dengan Byte Order Mark yang diperlukan untuk menentukan encoding (misalnya jika encodingnya UTF-16 dan BOM menunjukkan big-endian), maka BOM tersebut akan dipakai dan tidak dipancarkan ke output. Jika pengkodean masukan ditandai dengan ketangguhan eksplisit (misalnya UTF-16-BE), maka BOM diinterpretasikan sebagai ruang non-breaking dan dipertahankan dalam keluaran (termasuk selalu untuk UTF-8).
Hasil akhirnya adalah jika input ditandai sebagai endianness eksplisit, transcoding setia ke semua titik kode dalam sumber. Jika tidak ditandai dengan endian eksplisit, BOM tidak dianggap sebagai bagian dari string itu sendiri tetapi sebagai metadata, dan karenanya tidak disimpan dalam keluaran.
Contoh:
tf.strings.unicode_transcode (["Halo", "TensorFlow", "2.x"], "UTF-8", "UTF-16-BE")
Argumen:
- scope: Objek Scope
- input: Teks yang akan diproses. Bisa berbentuk apa saja.
- input_encoding: Pengkodean teks dari string masukan. Ini adalah salah satu pengkodean yang didukung oleh konverter algoritmik ucnv ICU. Contoh:
"UTF-16", "US ASCII", "UTF-8"
. - output_encoding: Pengkodean unicode untuk digunakan dalam keluaran. Harus salah satu dari
"UTF-8", "UTF-16-BE", "UTF-32-BE"
. Pengodean multi-byte akan menjadi big-endian.
Atribut opsional (lihat Attrs
):
- kesalahan: Kebijakan penanganan kesalahan ketika ada format yang tidak valid ditemukan dalam masukan. Nilai 'strict' akan menyebabkan operasi menghasilkan kesalahan InvalidArgument pada pemformatan masukan yang tidak valid. Nilai 'replace' (default) akan menyebabkan operasi mengganti format yang tidak valid dalam input dengan titik kode
replacement_char
. Nilai 'ignore' akan menyebabkan operasi melewati pemformatan yang tidak valid dalam input dan tidak menghasilkan karakter output yang sesuai. - replacement_char: Titik kode karakter pengganti yang akan digunakan sebagai pengganti pemformatan yang tidak valid dalam input saat
errors='replace'
. Setiap unicode codepoint valid dapat digunakan. Nilai defaultnya adalah karakter pengganti unicode default adalah 0xFFFD atau U + 65533.)
Perhatikan bahwa untuk UTF-8, meneruskan karakter pengganti yang dapat diekspresikan dalam 1 byte, seperti '', akan mempertahankan penyelarasan string ke sumber karena byte yang tidak valid akan diganti dengan penggantian 1 byte. Untuk UTF-16-BE dan UTF-16-LE, karakter pengganti 1 atau 2 byte apa pun akan mempertahankan penyelarasan byte ke sumbernya.
- replace_control_characters: Apakah akan mengganti karakter kontrol C0 (00-1F) dengan
replacement_char
. Defaultnya salah.
Pengembalian:
-
Output
: Tensor string yang berisi teks unicode yang dienkode menggunakanoutput_encoding
.
Pembuat dan Penghancur | |
---|---|
UnicodeTranscode (const :: tensorflow::Scope & scope, :: tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding) | |
UnicodeTranscode (const :: tensorflow::Scope & scope, :: tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding, const UnicodeTranscode::Attrs & attrs) |
Atribut publik | |
---|---|
operation | |
output |
Fungsi publik | |
---|---|
node () const | ::tensorflow::Node * |
operator::tensorflow::Input () const | |
operator::tensorflow::Output () const |
Fungsi statis publik | |
---|---|
Errors (StringPiece x) | |
ReplaceControlCharacters (bool x) | |
ReplacementChar (int64 x) |
Structs | |
---|---|
tensorflow :: ops :: UnicodeTranscode :: Attrs | Penyetel atribut opsional untuk UnicodeTranscode . |
Atribut publik
operasi
Operation operation
keluaran
::tensorflow::Output output
Fungsi publik
UnicodeTranscode
UnicodeTranscode( const ::tensorflow::Scope & scope, ::tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding )
UnicodeTranscode
UnicodeTranscode( const ::tensorflow::Scope & scope, ::tensorflow::Input input, StringPiece input_encoding, StringPiece output_encoding, const UnicodeTranscode::Attrs & attrs )
simpul
::tensorflow::Node * node() const
operator :: tensorflow :: Input
operator::tensorflow::Input() const
operator :: tensorflow :: Keluaran
operator::tensorflow::Output() const
Fungsi statis publik
Kesalahan
Attrs Errors( StringPiece x )
ReplaceControlCharacters
Attrs ReplaceControlCharacters( bool x )
PenggantianChar
Attrs ReplacementChar( int64 x )