Tensorflow입문기 및 선형회귀분석 (Linear regression)
Category: Technology <Tensorflow 입문기와 선형회귀분석(Linear regression)> 지난번 포스트에서 머신러닝의 지도학습/비지도학습과 간단한 Classifying/Clustering 예제를 살펴봤었다. 사실 이번에는 KNN, KMeans와 같은 Classifying, Clustering 알고리즘에 대한 포스팅을 하려고 했는데 텐서플로우를 살짝 다뤄보면서 해보게 된 '선형회귀분석' 에 대해서 먼저 포스팅해볼까 한다. 선형 회귀분석이 무엇인지, Tensorflow를 이용해서 선형회귀분석을 어떻게 하는지, 그리고 직접 데이터셋을 구해서 실행해본 회귀분석에 대해 다뤄보겠다. 선형 회귀분석 지난번 포스트에서 간단히 설명했지만, 선형 회귀분석은 수많은 데이터로 이루어진 데이터셋에 대해, 변수 간의 상관관계를 가장 잘 설명해주는 함수식을 찾는 과정이다. 예를들어, 1000명으로 이루어진 어떤 마을 사람 전체의 키와 몸무게에 대한 자료가 있다고 하자. 키를 x축으로, 몸무게를 y축으로 한 좌표평면에 이 마을사람들 1000명에 해당하는 [키, 몸무게]데이터를 1000개의 점으로 찍는다고 가정하자. 이 마을 사람들의 키와 몸무게가 양의 상관관계를 띄고 (키와 몸무게가 어느정도 비례하고), 어찌어찌해서 계산을 했더니 대부분 사람들의 키가 몸무게의 3.5배정도 됨을 알아냈다. 이 경우 이 마을사람들의 [키, 몸무게] 데이터는 '키 = 몸무게 * 3.5' 라는 함수식으로 선형회귀되며, 1001번째 새로운 마을사람의 몸무게를 알 때, 이 사람의 키를 대략적으로 유추할 수 있을것이다. 위의 예시는 어디까지나 예시일 뿐이다. 회귀분석을 직접 Tensorflow와 파이썬을 이용해 해보자. 아래의 코드는 [x, y] 로 이루어진 인위적으로 1000개의 점(Data point)가 대략적으로 y = x*0.1 + 0.3 이라는 함수 관계를 따르도록 생성하는 과정이다. 그러나 모든 점이 정확히 y=x*0....