[딥러닝] Linear Regression 코드 실행 및 코드 분석
딥러닝(Deep-Learning)

[딥러닝] Linear Regression 코드 실행 및 코드 분석

반응형

Linear Regression 코드 실행 및 코드 분석


코드 출처 : https://github.com/hunkim/DeepLearningZeroToAll/blob/master/lab-02-3-linear_regression_tensorflow.org.py



코드 실행결과 캡처 화면



실행 결과를 통해서, W는 -1로 b는 1로 수렴한다는 것을 알 수 있다.


linear_model = (-1 * x) + 1




코드 분석


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 텐서플로우 import 후, 간단하게 사용하기 위해 tf로 명칭 지정
import tensorflow as tf
 
# 가설에서 사용할 W와 b를 선언 (변수는 32bit float 타입, 훈련을 통해 학습시켜야 하기에 Variable 이용)
= tf.Variable([.3], tf.float32) #0.3으로 초기값 지정
= tf.Variable([-.3], tf.float32) #-0.3으로 초기값 지정
 
# 모델의 입출력 변수를 32bit float 타입으로 placeholder 함수를 이용하여 선언
= tf.placeholder(tf.float32)
= tf.placeholder(tf.float32)
 
# 가설(Hypothesis) 정의 (W*x + b)
linear_model = x * W + b
 
# loss를 텐서플로우 식으로 나타냄 (reduce_sum과 square 함수 활용)
loss = tf.reduce_sum(tf.square(linear_model - y))  # sum of the squares
 
# optimizer를 통해서 loss를 최소화시키는 과정. learning_rate는 0.01. 과정을 train에 저장
optimizer = tf.train.GradientDescentOptimizer(0.01)
train = optimizer.minimize(loss)
 
# run에 사용할 입출력 데이터를 할당
x_train = [1234]
y_train = [0-1-2-3]
 
# 학습을 하기 위한 세션 생성 및 initalizer를 통한 초기화 과정
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
 
#for문을 통해서 기존에 선언한 x_train과 y_train을 placeholder로 생성한 x와 y에 넣고 1000번 돌리며 학습
for i in range(1000):
    sess.run(train, {x: x_train, y: y_train})
 
# W와 b, loss 변수를 만들어서 1000번째 최적의 결과값을 출력
curr_W, curr_b, curr_loss = sess.run([W, b, loss], {x: x_train, y: y_train})
print("W: %s b: %s loss: %s" % (curr_W, curr_b, curr_loss))
 
cs





Deep Learning을 활용한 제품 Search




LG전자의 '딥씽큐(DeepThinQ)'



LG전자가 독자 개발한 딥러닝 기술 기반 AI에어컨, 냉장고, 로봇청소기, 드럼세탁기 제품이다.


이 가전 제품들의 특징은 고객의 사용 패턴과 주변 환경을 제품 스스로 분석해서 사용자에게 최적화된 방식으로 작동한다.



각 제품마다 딥러닝을 통해 제공되는 서비스는 다음과 같다.


디오스냉장고 

- 각종 센서를 통해 고객이 제품을 사용하는 패턴, 제품이 설치된 장소의 온도와 습도 등을 파악, 도어가 열리는 횟수와 시간을 분석해 사용자가 도어를 거의 열지 않는 시간대에는 자동으로 절전 운전을 한다.


로봇청소기 로보킹 터보플러스

- 장애물을 스스로 판단해 보다 꼼꼼하게 청소한다. 기존에 로보킹 터보플러스를 구매한 고객들도 스마트폰 앱을 통해 로보킹의 소프트웨어를 업데이트하면 더 스마트한 청소 성능을 경험할 수 있다.


트롬세탁기

- AI기술이 녹아들은 제품이다. 세탁기가 날씨 정보를 파악하고 최적화된 세탁 옵션을 찾아낸다. 습한 날씨에는 보다 강력한 탈수를 제공하고, 미세먼지가 많은 날은 헹굼 시간을 추가한다.


AI 휘센듀얼에어컨

- 딥씽큐 기반의 '스마트케어' 기능을 탑재, 공간학습 인체감지 센서를 통해 실내 환경을 감지하고 사람의 위치와 수를 파악해서 냉방 공간, 냉방 모드, 공기청정 가동 등을 스스로 결정한다.

반응형