안녕하세요. 이번 포스팅에서는 Tensorflow를 다뤄볼텐데요.
다름이 아니고, 강의를 듣다보니 강의자료가 Tensorflow 1.0에 맞춰져 있어서 제대로 실행이 되지 않길래 해결방안을 찾아보고 이렇게 글을 작성하게 되었습니다.
Tensorflow 1.0에서 2.0 버전으로 넘어오면서
기존 1.0버전에서 사용하던 session()과 placeholder가 사라졌어요!!
순서는 이렇습니다.
첫번째, 에러가 나는 걸 먼저 확인하시고
두번째, 해결방법을 보시면 되겠습니다.
1. Session() 실행시 발생하는 에러
1. 해결책: Session() 대신 tf.print()로 대체하여 사용
2. placeholder 사용시 발생하는 에러
2. 해결책: 함수 선언 후 tf.constant("숫자", 원하는 형태)로 지정하여 사용
위와 같이 함수를 지정하여 사용할 수도 있지만
Tensorflow에서는 아래와 같이 내장 연산자를 지원하고 있습니다.
import tensorflow as tf
# tf. add: 더하기
print(tf.add(5, 4))
# tf.subtract: 빼기
print(tf.subtract(5, 4))
# tf.multiply: 곱하기
print(tf.multiply(5, 4))
# tf.divide: 나누기
print(tf.divide(5, 4))
# tf.pow: n-제곱
print(tf.pow(5,4))
# tf.negative: 음수 부호
print(tf.negative(5))
# tf.abs: 절대값
print(tf.abs(-5))
# tf.sign: 부호
print(tf.sign(-5))
# tf.round: 반올림
print(tf.round(5.4))
# tf.math.ceil: 올림
print(tf.math.ceil(5.4))
# tf.floor: 내림
print(tf.floor(5.4))
# tf.math.square: 제곱
print(tf.math.square(-5))
# tf.math.sqrt: 제곱근
A = tf.constant(9, tf.float32)
print(tf.math.sqrt(A))
# tf.maximum: 두 텐서의 각 원소에서 최대값만 반환
print(tf.maximum(5, 4))
# tf.minmium: 두 텐서의 각 원소에서 최솟값만 반환
print(tf.minimum(5, 4))
# tf.cumsum: 누적합
x = tf.constant([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print(tf.cumsum(x))
# tf.math.sumprod: 누적곱
x = tf.constant([1, 2, 3, 4, 5])
print(tf.math.cumprod(x))
해당 연산자들을 활용한다면 함수 지정없이도 더 쉬운 사용이 가능하니 참고하시길 바랍니다.
그럼 오늘도 즐거운 코딩!!
반응형
'코딩 | 개념 정리 > Python' 카테고리의 다른 글
[엑셀자동화with파이썬] Pandas 라이브러리 (0) | 2021.12.25 |
---|---|
[Python] Jupyter notebook 단축키 정리 (2) | 2021.09.06 |
[Python] C언어와 비교한 변수와 입력 (0) | 2021.07.04 |
[Python] 문자열 (0) | 2021.07.03 |
[Python] Colab Tensorflow 2.X에서 1.X로 버전 낮추기 (0) | 2021.05.05 |