Python에서 Tensor를 NumPy 배열로 변환
-
Python에서
Tensor.numpy()
함수를 사용하여 Tensor를 NumPy 배열로 변환 -
Python에서
Tensor.eval()
함수를 사용하여 Tensor를 NumPy 배열로 변환 -
Python에서
TensorFlow.Session()
함수를 사용하여 Tensor를 NumPy 배열로 변환
이 튜토리얼에서는 Python에서 Tensor를 NumPy 배열로 변환하는 방법을 소개합니다.
Python에서Tensor.numpy()
함수를 사용하여 Tensor를 NumPy 배열로 변환
TensorFlow 라이브러리의 Eager Execution
은 Python에서 텐서를 NumPy 배열로 변환하는 데 사용할 수 있습니다. Eager Execution
을 사용하면 TensorFlow 라이브러리 작업의 동작이 변경되고 작업이 즉시 실행됩니다. Eager Execution
을 사용하여 Tensor 객체에 대해 NumPy 작업을 수행 할 수도 있습니다. Tensor.numpy()
함수는 Python에서 Tensor를 NumPy 배열로 변환합니다. TensorFlow 2.0에서는Eager Execution
이 기본적으로 활성화되어 있습니다. 따라서이 접근 방식은 TensorFlow 버전 2.0에서 가장 잘 작동합니다. 다음 코드 예제를 참조하십시오.
import tensorflow as tf
tensor = tf.constant([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print("Tensor = ", tensor)
array = tensor.numpy()
print("Array = ", array)
출력:
Tensor = tf.Tensor(
[[1 2 3]
[4 5 6]
[7 8 9]], shape=(3, 3), dtype=int32)
Array = [[1 2 3]
[4 5 6]
[7 8 9]]
위 코드에서 우리는 먼저 Python에서tf.constant()
함수를 사용하여 Tensor 객체tensor
를 만들고 초기화했습니다. tensor
를 인쇄하고 Python에서tensor.numpy()
함수를 사용하여 NumPy 배열array
로 변환했습니다. 결국 우리는배열
을 인쇄했습니다.
Python에서Tensor.eval()
함수를 사용하여 Tensor를 NumPy 배열로 변환
또한Tensor.eval()
함수를 사용하여 Python에서 Tensor를 NumPy 배열로 변환 할 수 있습니다. 이 메서드는 TensorFlow 버전 2.0에서 지원되지 않습니다. 따라서 TensorFlow의 이전 버전 1.0을 유지하거나 TensorFlow 라이브러리 버전 2.0의 모든 동작을 비활성화해야합니다. 다음 코드 예제를 참조하십시오.
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
tensor = tf.constant([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print("Tensor = ", tensor)
array = tensor.eval(session=tf.Session())
print("Array = ", array)
출력:
Tensor = Tensor("Const_1:0", shape=(3, 3), dtype=int32)
Array = [[1 2 3]
[4 5 6]
[7 8 9]]
위의 코드에서 우리는 Python에서tensor.eval()
함수를 사용하여 Tensor 객체tensor
를 NumPy 배열array
로 변환했습니다. 먼저 TensorFlow 라이브러리 버전 1.0을 가져오고 버전 2.0의 모든 동작을 비활성화했습니다. 그런 다음tf.constant()
함수를 사용하여tensor
를 만들고 초기화하고tensor
에 값을 인쇄했습니다. 그런 다음tensor.eval()
함수를 실행하고 반환 된 값을array
에 저장하고 값을array
에 인쇄했습니다.
Python에서TensorFlow.Session()
함수를 사용하여 Tensor를 NumPy 배열로 변환
TensorFlow.Session()
은 Python에서 Tensor를 NumPy 배열로 변환하는 데 사용할 수있는 또 다른 메서드입니다. 이 방법은Tensor.eval()
함수를 사용한 이전 방법과 매우 유사합니다. 이 접근 방식은 TensorFlow 라이브러리 버전 2.0에서도 지원되지 않습니다. TensorFlow 라이브러리 버전 1.0을 설치하거나 TensorFlow 라이브러리 버전 2.0의 모든 동작을 비활성화해야합니다. Tensor 객체를TensorFlow.Session().run()
함수에 전달하여 해당 Tensor 객체를 Python의 NumPy 배열로 변환 할 수 있습니다. 다음 코드 예제를 참조하십시오.
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
tensor = tf.constant([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print("Tensor = ", tensor)
array = tf.Session().run(tensor)
print("Array = ", array)
출력:
Tensor = Tensor("Const_6:0", shape=(3, 3), dtype=int32)
Array = [[1 2 3]
[4 5 6]
[7 8 9]]
위의 코드에서 우리는 Python에서tf.Session.run(tensor)
함수를 사용하여 Tensor 객체tensor
를 NumPy 배열array
로 변환했습니다. 먼저 버전 1.0 호환 TensorFlow 라이브러리를 가져오고 버전 2.0의 모든 동작을 비활성화했습니다. 그런 다음 Tensor 객체tensor
를 만들고tensor
의 값을 인쇄했습니다. 그런 다음tensor
Tensor를tf.Session.run(tensor)
함수를 사용하여array
NumPy 배열로 변환하고 값을array
에 인쇄했습니다.
Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.
LinkedIn