본문 바로가기

CS/머신러닝

(11)
[머신러닝] multinomial classification이란? - 1 multinomial classification 우리가 이전에 배운 logistic regression을 간단하게 도식화하면 표현하면 아래의 그림이 된다.x라는 데이터가 W의 weight를 가진 식에 입력되어 나온 결과 Z는 sigmoid 함수에 입력된다. 출력되는 값은 logistic regression으로 예상 결과 데이터가 나타나게 된다. Y : 실제 데이터, Y의 hat : 예측한 데이터 궁극적으로 logistic regression의 목적을 그림으로 표현하면 아래의 그림처럼□와 X를 구분하는 선을 생성하는 것이다. multinomial classification logistic regression 여러개를 합쳐서 multinomial classification 구현이 가능하다.아래는 A,B,C ..
[머신러닝] Logistic Classification 텐서플로 구현 우리가 배운 Logistic regression의 hypothesis, cost function 그리고 gradient descent algorithm 소스코드1234567891011121314151617181920212223242526272829303132333435363738import tensorflow as tfimport numpy as np #데이터 read를 위한 모듈 xy = np.loadtxt('traindata.txt', unpack=True, dtype='float32')x_data = xy[0:-1] #모든 x 데이터y_data = xy[-1] #하나의 y 데이터 X = tf.placeholder(tf.float32)Y = tf.placeholder(tf.float32) # x의 개..
[머신러닝] Logistic classification와 cost minimize 함수 복습아래는 이전에 배운 Linear Regression의 hypothesis, cost function, gradient decent alogorithm이다.hypothesis :cost :gradient decent :그리고 cost function을 그래프로 표현하면 아래와 같다binary classification많은 상황중에 두가지중 하나가 선택되는 경우는 많다. 그러한 상황을 binary classification이라고 한다.예를 들면, 이메일이 스팸메일인지 아닌지를 확인, 페이스북에서 특정 글이 나의 피드에 보여질지 말지 등등실세계의 다양한 현상이 2가지로 결정되는 현상은 많다.우리는 이런 2가지 현상을 0,1로 encoding을 하겠다.스팸메일은 1, 정상 메일은 0 처럼 각 상황을 0 or..
[머신러닝] 텐서플로 사용하기 - 1 텐서플로를 실제 pycharm에서 사용 해보겠다. 텐서플로는구글의 오픈소스이며, numerical computation을 data flow graph를 통해 처리하는 프레임 워크이다.파이썬으로도 개발가능ㅎ.많은 데이터가 따로 또는 같이 연산이 되므로 머신러닝에 적합한 프레임워크라 할 수 있다. data flow graph의 구성 요소node : mathematical operationedge : multidimensional data array(tensor라고도 한다)tensor라고 하는 대량의 데이터가 노드를 거치면서 연산이 처리된다. 1. Hello World!123456789101112131415# tensorflow 모듈을 tf로 import한다.import tensorflow as tf # he..
[머신러닝] Linear Regression의 minimize cost 알고리즘 Linear Regression에서 cost를 가장 작게 만드는 것이 머신러닝(linear regression)의 목표라고 하는데, 그러면 가장 작은 cost를 어떻게 찾아야 하는가?이번 포스트에서는 최소의 cost를 가지는 값을 찾는 알고리즘을 설명하도록 하겠다. 잠깐의 복습우리가 만든 Hypothesis와 그것의 cost를 구하는 함수는 아래의 식과 같다. 여기서 우리는 cost를 가장 작게 하고 싶다. 최소의 cost를 가지는 것을 어떻게 찾는가?위 표의 데이터를 이용하여, 각 W를 가정하고 cost를 구해보자. W = 1, cost(W) = 0W = 0, cost(W) = 4.67W = 2, cost(W) = 4.67W가 1일때 cost가 0이다. W = 0 or 2 이면 cost는 0보다 큰 값..
[머신러닝] Linear Regression 실습 파이참에서 실행 할 소스코드(파이썬이 익숙치 않아서 자세한 프로그램언어적 차원의 풀이는 하지 않겠다.)1234567891011121314151617181920212223242526272829303132import tensorflow as tf # train data - 학습을 시켜줄 데이터다x_data = [1,2,3]y_data = [1,2,3] # cost function에 필요한 W,b를 여기서 지정해 줬다.# -1~1 사이에 임의의 값으로 지정한다.W = tf.Variable(tf.random_uniform([1], -1.0, 1.0))b = tf.Variable(tf.random_uniform([1], -1.0, 1.0)) # hypothesis H(x) = Wx + b. 우리의 가설을 만들었다..
[머신러닝] Linear Regression 개념 Linear Regression란 무엇인가?Linear : 직선Regression : 회귀단어의 뜻을 이해하면 Linear regression 설명이 다 된다. 이름을 정말 잘 지었다. 기계가 학습을 하는데 학습을 하기 위해선 학습을 할 데이터가 필요하다.x (hours)y(score)1090980350230요로코롬 x데이터는 공부하는 시간, y는 점수를 나타내는 데이터가 여기있다.이러한 데이터를 training data라고 한다.위 데이터를 regression 모델에 학습을 시키고 나서, x로 5를 regression 모델에 입력하면 출력으로 60정도 되는 점수가 출력 될 것이다.위 과정이 Linear Regression을 모두 표현한 것이다. -Hypothesis(가설)세상의 많은 현상들은 Linea..
텐서플로 설치 -3 (파이참(Pycharm)에 tensorflow 설치)[마지막] 파이썬을 사용하려면 IDE가 필요하다. 파이참(PyCharm)을 쓰자. 1. 파이참 설치파이참 설치하기1. 홈페이지에서 맞는 버전(Linux에 Community로)을 다운로드 한다.2. 압축을 푼다3. bin 폴더에서 pycharm.sh 파일을 터미널로 드래그 앤 드롭한다.4. 약관 동의는 Accept!5. 이렇게 하면 아래 그림처럼 설정화면이 나온다. 설정은 알아서 설정하고 OK 6. 우측하단의 Configure 클릭, setting 클릭 7. setting 메뉴 중에서 Project Interpreter 선택8. 안에서 project Interpreter를 선택해서 anaconda2/bin/python 을 선택해주고 9. Package에 tensorflow가 있으면 파이참(pycharm) 설치가 끝났..