recap
hypothesis
cost function
gradient descent algorithm
3가지를 기억하고 있으면 지금까지 잘 배운 것
predictin gexam score
regression using one input
now we are going to regression using three inputs (x1, x2, x3) -> Y final score
now we have several .. multi -varaible
to calculate it we use matrix
matrix multiplication
hypothesis using matrix
우리가 원하는 값은 오른쪽이고 매트릭스 사용하면 왼쪽 처럼 간단하게 표현 가능
순서가 바뀌어도 같은 식이니까 오케이임
매트릭스 쓸 때 x를 보통 앞부분에 둔다.
X 대문자로 쓰는 것은 매트릭스 표현이라는 것으로 쓰이기도
실제 데이터에 적용해볼까요
이런 점수 집합을 인스턴스라고 부른다.
근데 인스턴스 1000개면 1000개를 반복해야 한다.
놀랍게도 이렇게 만들면 w 는 그대로 두고 옆에 인스턴스만 계속 길어진다!!
[5, 3] [3, 1] [5, 1]
5개의 인스턴스 3개 점수
3개 점수 따른 가중치
5개 인스턴스와 결과는 하나
가운데 3 은 같아야 하고 뒤에 끝 5, 1은 마지막에 나와야 한다.
그래서 ? ? 을 채울 수 있게 된다.
3, 1 이겠지
numpy에서는 [n, 3] 이렇게 인스턴스 아직 미정 시 -1, none으로 둔다.
얘도 마찬가지 ? ? 은 3 2 로 채울 수 있다.
정리하면 H(x) = Wx + b
이렇게 사용하지만 구현하게 되면
H(X) = XW
가 된다.
구현은 다르지만 수학적 원리는 같다.
-------------
placeholder를 만들고
하나의 값을 준다. hypothesis 는 식 그대로 사용해서 보여준다.
hypothesis 있으면 hypothesis - y square 이대로 하고 sesion initilizer, ses.run feed_dict 로 학습한다.
하지만 이건 이제 사용하지 않는다.
이제는 매트릭스로 인스턴스를 한꺼번에 줄 수 있다.
이제부터는 x1, x2 가 아닌 x_data로 충분하다.
x 는 none, 3 -> none : 인스턴스 개수 3 은 x1, x2 x3 세개 엘레멘트니까
Y 는 none, 1 -> 마찬가지로 none, 대신 결과는 한개니까 1
아무튼 그래서 이렇게 매트릭스를 사용하면 x 하나씩 설정 노노 해도 된다.
< 데이터를 파일로부터 읽어오기 >
가장 쉽게 하는 방법은 loadtxt 함수 사용하기
csv파일은 데이터를 콤마로 구분한 것
단점은 각 데이터 타입이 모두 통일되어야 한다는 점
나누는건 슬라이싱 방법
파이썬 슬라이싱
넘피로 가면 더 강력해진 슬라이싱이 가능하다.
따라서 x-data = xy[:, 0:-1]
마지막 빼고 모두 가져온다.
y_data = xy[:, [-1]]
마지막만 가져온다.
읽어왔다.
그러면 x_data Y-DATA 부분만 달라지고 대부분 비슷하다.
학습을 다 하고 나서는 your score will be 에다가 내 점수 물어볼 수 있다.
다른 친구 점수도 물어볼 수 있다.
파일이 굉장히 커서 한번에 읽어오기 힘들면
tensorflow queue ruunner를 사용할 수 있다.
파일을 배치 만큼 조금씩 꺼내서 읽어낼 수 있다.
복잡해 보이지만 간단하게 싸용할 수 있다.
1. 우선 파일 데이터들을 불러오고
2. reader 정의
3. value 값을 어떻게 파싱할 것인지.. decode_csv를 이용한다.
배치를 보면 읽어온 데이터를 가져올 수 있다.
최종 코드
batch - 10개씩 펌프해오기
'머신러닝,딥러닝 > tensorflow' 카테고리의 다른 글
lec08 deep neural network for everyone (0) | 2021.01.22 |
---|---|
lec07 learning rate, data preprocessing overfitting (0) | 2021.01.21 |
lec06 multinominal 개념 소개 (0) | 2021.01.21 |
lec05 logistic (regression) classification (0) | 2021.01.19 |
lec04 file읽어서 tf.model에 집어넣기 (0) | 2021.01.19 |
lec 03 linear regrssion 의 cost 최소화 (0) | 2021.01.18 |
tensorflow lec 02 linear (0) | 2021.01.17 |
tensorflow 잘 안됨 Import tensorflow.compat.v1 as tf (0) | 2021.01.17 |