homebody's blog

[Python][TensorFlow] 07. Logistic Regression/Classification의 소개 본문

Python/TensorFlow

[Python][TensorFlow] 07. Logistic Regression/Classification의 소개

homebody 2019. 6. 23. 19:13

TensorFlow(Logistic Regression/Classification의 소개)

Binary(Multi-class) Classification

  • 머신러닝을 하기 위해서는 0과 1로 나뉘어야한다.

  • ex)

    1. 시험 : 합격 / 불합격

    2. 스팸메일필터 : 스팸메일 / 정상메일

    3. 얼굴인식 : Real / Fake

x_train = [[1, 2], [2, 3], [3, 1], [4, 3], [5, 3], [6, 2]]
y_train = [[0], [0], [0], [1], [1], [1]] 

Logistic VS Linear

  • Logistic을 적용하기 위한 데이터

    • 두가지의 케이스로 구분선을 이용하여 구별을 할 수 있고 셀 수 있으며, 흩어져 있다.

    • ex) 신발 사이즈, 직원 수

  • Linear을 적용하기 위한 데이터

    • 데이터들이 연속적으로 분포되어 있다. 새로운 데이터가 오더라도 인근하는 데이터가 온다.

    • ex) 시간, 무게, 높이

Logistic_Y = [[0], [0], [0], [1], [1], [1]] 
Linear_Y = [828, 833, 918, 548, 545]	# 숫자

Sigmoid(Logistic) function

g(z) 함수는 0과 1사이의 값을 가진다.

hypothesis = tf.sigmoid(z)	# z = tf.matmul(X, Θ) + b
hypothesis = tf.div(1., 1. + tf.exp(z))

predicted = tf.cast(hypothesis > 0.5, dtype=tf.int32)
Comments