본문 바로가기
Drawing (AI)/MachineLearning

TensorFlow 2.0 (Operations)

by 생각하는 이상훈 2023. 1. 14.
728x90

기본 연산

tensor = tf.constant([[1, 2], [3, 4]])
tensor

#출력
<tf.Tensor: id=19, shape=(2, 2), dtype=int32, numpy=
array([[1, 2],
       [3, 4]], dtype=int32)>

기본 연산에 앞서서 2by2 행렬의 tensor array를 만든다.

 

덧셈

tensor + 2

#결과
<tf.Tensor: id=22, shape=(2, 2), dtype=int32, numpy=
array([[3, 4],
       [5, 6]], dtype=int32)>

 

스칼라 곱

tensor * 5

#결과
<tf.Tensor: id=25, shape=(2, 2), dtype=int32, numpy=
array([[ 5, 10],
       [15, 20]], dtype=int32)>

 

Numpy function

# Getting the squares of all numbers in a TensorFlow tensor object
np.square(tensor)

#결과
array([[ 1,  4],
       [ 9, 16]], dtype=int32)
       

# Getting the square root of all numbers in a tensorflow tensor object
np.sqrt(tensor)

#결과
array([[1.        , 1.41421356],
       [1.73205081, 2.        ]])

 

행렬 곱

 np.dot(tensor, tensor_20)
 
 #결과
 array([[ 87, 106],
       [197, 216]], dtype=int32)

Strings in TensorFlow 2.0

텐서에서는 상수함수를 이용하여 문자열 상수도 만들 수 있다.

tf_string = tf.constant("TensorFlow")
tf_string

#결과
<tf.Tensor: id=62, shape=(), dtype=string, numpy=b'TensorFlow'>

 

간단한 문자열 연산

tf.strings.length(tf_string)

#문자열 길이 출력
<tf.Tensor: id=49, shape=(), dtype=int32, numpy=10>

tf.strings.unicode_decode(tf_string, "UTF8")

#UTF8 형식으로 디코딩하여 출력
<tf.Tensor: id=58, shape=(10,), dtype=int32, 
 numpy=array([ 84, 101, 110, 115, 111, 114,  70, 108, 111, 119], dtype=int32)>

 

문자열 저장

tf_string_array = tf.constant(["TensorFlow", "Deep Learning", "AI"])

# Iterating through the TF string array
for string in tf_string_array:
  print(string)
  
#출력
tf.Tensor(b'TensorFlow', shape=(), dtype=string)
tf.Tensor(b'Deep Learning', shape=(), dtype=string)
tf.Tensor(b'AI', shape=(), dtype=string)

 

728x90