Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Menukar Tensor TensorFlow kepada Array NumPy?

Bagaimana untuk Menukar Tensor TensorFlow kepada Array NumPy?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-03 17:54:30780semak imbas

How to Convert TensorFlow Tensors to NumPy Arrays?

Cara Menukar Tensor kepada Tatasusunan NumPy dalam TensorFlow

Dalam pengikatan Python untuk TensorFlow, menukar tensor kepada tatasusunan NumPy ialah langkah yang perlu untuk selanjutnya manipulasi data atau penyepaduan dengan perpustakaan pihak ketiga.

Dalam TensorFlow 2.x:

TensorFlow 2.x mendayakan pelaksanaan yang bersemangat secara lalai, membolehkan anda memanggil . numpy() pada objek Tensor. Kaedah ini mengembalikan tatasusunan NumPy:

<code class="python">import tensorflow as tf

a = tf.constant([[1, 2], [3, 4]])
b = tf.add(a, 1)

a.numpy()  # [array([[1, 2], [3, 4]], dtype=int32)]
b.numpy()  # [array([[2, 3], [4, 5]], dtype=int32)]</code>

Dalam TensorFlow 1.x:

Eager execution tidak didayakan secara lalai. Untuk menukar tensor kepada tatasusunan NumPy dalam TensorFlow 1.x:

  • Gunakan kaedah .eval() dalam sesi:
<code class="python">a = tf.constant([[1, 2], [3, 4]])
b = tf.add(a, 1)

with tf.Session() as sess:
    out = sess.run([a, b])
    # out[0] contains the NumPy array representation of a
    # out[1] contains the NumPy array representation of b</code>
  • Gunakan tf .compat.v1.numpy_function:
<code class="python">a = tf.constant([[1, 2], [3, 4]])
b = tf.add(a, 1)

out = tf.compat.v1.numpy_function(lambda x: x.numpy(), [a, b])
# out[0] contains the NumPy array representation of a
# out[1] contains the NumPy array representation of b</code>

Nota: Tatasusunan NumPy mungkin berkongsi memori dengan objek Tensor. Sebarang perubahan pada satu mungkin dapat dilihat pada yang lain.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Tensor TensorFlow kepada Array NumPy?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn