tensorflow(7)
-
[텐서플로우로 시작하는 딥러닝 기초] Lab 07-1: Application & Tips: 학습률(Learning Rate)과 데이터 전처리(Data Preprocessing)
Learning rate의 조정방법과, 데이터의 노이즈가 뭔지 알아보자. Learning rate 알다시피 Learning rate는 한 epoch 마다 Weight에 얼마큼 업데이트를 해주는지를 정하는 값이다. 이 Learning rate 값은 적당해야하는데, 너무 크면 와리가리하느라 학습이 안되고 너무 작으면 시간이 오래 걸리기 때문이다. 그래서 학습 중에 Learning rate를 알맞게 변경하는 방법이 있다. 위 그림에는 exponenetial_dacay가 나와있는데, 일정한 epoch 마다 원하는 만큼의 learning rate를 감소시킨다. (https://www.tensorflow.org/api_docs/python/tf/compat/v1/train/exponential_decay) ▪ le..
2020.12.27 -
[텐서플로우로 시작하는 딥러닝 기초] Lab 06-1: Softmax classifier 를 TensorFlow 로 구현하기
import tensorflow as tf import numpy as np print(tf.__version__) tf.random.set_seed(777) # for reproducibility x_data = [[1, 2, 1, 1], [2, 1, 3, 2], [3, 1, 3, 4], [4, 1, 5, 5], [1, 7, 5, 5], [1, 2, 5, 6], [1, 6, 6, 6], [1, 7, 7, 7]] y_data = [[0, 0, 1], [0, 0, 1], [0, 0, 1], [0, 1, 0], [0, 1, 0], [0, 1, 0], [1, 0, 0], [1, 0, 0]] #convert into numpy and float format x_data = np.asarray(x_data, dt..
2020.12.05 -
[텐서플로우로 시작하는 딥러닝 기초] Lab 05-3: Logistic Regression/Classification 를 TensorFlow로 구현하기
이번 주는 방화지대 공사를 하느라 또 오랜만이다. 낫질과 톱질을 하도 했더니 손가락 마디가 쑤시네.. 이번에는 Logistic Regression을 텐서플로우로 구현해보자! import numpy as np import matplotlib.pyplot as plt import tensorflow as tf tf.random.set_seed(1106) # for reproducibility x_train = [[1., 2.], [2., 3.], [3., 1.], [4., 3.], [5., 3.], [6., 2.]] y_train = [[0.], [0.], [0.], [1.], [1.], [1.]] x_test = [[5.,2.]] y_test = [[1.]] x1 = [x[0] for x in x_trai..
2020.10.24 -
[텐서플로우로 시작하는 딥러닝 기초] Lab 04: Multi-variable Linear Regression 를 TensorFlow 로 구현하기
아래의 데이타를 사용하여 다중선형회귀를 텐서플로우로 구현해보자. import tensorflow as tf import numpy # data and Label x1 = [73., 93., 89., 96., 73.] x2 = [80., 88., 91., 98., 66.] x3 = [75., 93., 90., 100., 79.] y = [152., 185., 180., 196., 142.] # weights w1 = tf.Variable(tf.random.normal([1])) # [1]은 shape. 1 크기의 난수 w2 = tf.Variable(tf.random.normal([1])) w3 = tf.Variable(tf.random.normal([1])) b = tf.Variable(tf.random...
2020.09.01 -
[텐서플로우로 시작하는 딥러닝 기초] Lab 03: Linear Regression and How to minimize cost 를 TensorFlow 로 구현하기
저번 시간에 우리의 가설 함수는 H(x) = Wx. 원점을 지나는 함수로 simplified 하기로 했다. 아직은 Gradient descent를 배우는 단계이기 때문에. 그리고 Cost함수는 아래와 같다. 이 Cost 함수를 파이썬으로 구현해보자. (텐서플로우 없는 그냥 파이썬) import numpy as np #data 설정 X = np.array([1,2,3]) Y = np.array([1,2,3]) #cost 함수 정의 def cost_func(W, X, Y): c = 0 for i in range(len(X)): c += (W * X[i] - Y[i]) ** 2 #가설과 실제 데이터 차의 제곱의 합을 return c / len(X) #평균내주기 for feed_W in np.linspace(-..
2020.08.09 -
[텐서플로우로 시작하는 딥러닝 기초] Lec 03: Linear Regression and How to minimize cost
간략화 하기 위해 H(x)에서 b를 생략하여 H(x) = Wx 라고 하고 이에 따라 Cost 함수도 간략해진다. 이 Cost 함수가 어떻게 생겨먹었는지 살펴보자. 아! 당연히 cost(W)는 W에 대한 이차함수일 것이다. 우리는 이 cost가 최소가 되는 W를 구하는 것이 목표이다. 오! cost(W)를 W로 미분하였을 때 0이 되는 값(꼭지점)의 W값이겠구나! (위 함수에서는 1) 이러한 방식의 알고리즘이 Gradient descent algorithm (경사하강법)이다. 그럼 Gradient descent algorithm이 작동하는 방법을 보자. Initial Weight에서 기울기를 구한 뒤, 그 기울기 값을 W에 곱한 값을 W에서 빼준다. 이를 계속해서 반복하는데 그럼 W값은 꼭지점으로 이동할 ..
2020.08.05