일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- C/C++
- BFS
- 라인플러스
- 벤쿠버
- C++
- DP
- 백트래킹
- 딥러닝
- 시애틀
- STL
- 파이썬
- 머신러닝
- 프로그래머스
- 알고리즘
- 다이나믹프로그래밍
- 라인
- 프로그래밍언어론
- 스프링 프레임워크
- leetcode
- binary search
- Python
- 스타벅스
- jvm
- spring
- 릿코드
- Spring Framework
- dfs
- 모두를 위한 딥러닝
- Java
- Today
- Total
목록모두를 위한 딥러닝 (10)
케이스윔의 개발 블로그
실생활에서는 2개 중 고르는 것보다 여러개 중 하나를 고르는 경우가 많다! 그럴때 softmax를 사용한당Logistic classifier에서 나온 값은 scores에 불과하고 이것을 softmax 함수를 통해 확률로 나오도록 해야한다! 이 확률의 합은 1이다. 행렬의 곱인 XW를 tensorflow를 이용한다면 tf.matmul(X, W)+b와 같이 표현할 수 있다. softmax function은? hypothesis = tf.nn.softmax(tf.matmul(X, W)+b) 어떤 레이블이 될 것인지에 대한 확률로 값이 나올 것이다. cost = tf.reduce_mean(-tf.reduce_sum(Y * tf.log(hypothesis), axis=1))optimizer = tf.train.G..
오늘은 여러개의 class가 있을 때 그 중에 어느 class인지를 알아내는 Softmax classification을 공부해보겠다! 이전 시간에 배웠던 Binary classification도 Linear regression에서 시작을 했다. 하지만 H(x)가 0~1 사이의 값이 아니기 때문에 어떤 함수 g(z)를 통해서 0~1 사이의 값을 만들어주었고, 그 함수가 sigmoid 함수였다 오늘은 거기서 더 응용을 해서 여러개의 class를 분류할 수 있도록 해보겠다.앞으로 수식에서 y는 실제데이터를 의미하고 은 예측값을 의미한다! 위에는.. 모자.. y의 햇이라고 부른다. 귀엽다... Multinomial classification Binary가 아닌 여러개의 클래스로 분류를 하는 것! 만약에 몇시간을..
학습을 통해서 cost를 작게 하는 W를 구해보자! cost를 최소화하고자 하는 방법은 Linear regression과 마찬가지로 기울기를 변화시키면서 W를 조정하게 된다! import tensorflow as tf x_data = [[1, 2], [2, 3], [3, 1], [4, 3], [5, 3], [6, 2]]y_data = [[0],[0],[0], [1], [1], [1]]#x_data는 공부한시간, y_data는 0아니면 1로 주어진다! #None으로 주는 이유는 데이터가 몇개 주어질지 몰라서 n개임을 표시한당X = tf.placeholder(tf.float32, shape=[None,2])Y = tf.placeholder(tf.float32, shape=[None,1])#shape에 주의를..
오늘 공부할 내용은 Logistic Classification이다. 한 일주일만에 다시 공부를 하는 거라서 너무 잠이 오지만 잘 정리해보도록 하겠다. 이 알고리즘은 Classification 알고리즘 중 정확도가 높은 알고리즘이라고 알려져 있다. Neural Network와 딥러닝의 중요한 component인 알고리즘이라고 할 수 있다. 이 부분을 다루기 전에 이전의 Linear regression 을 다시 복습 해 보자!기억해야 하는 중요한 세가지는 Hypothesis, cost function, Gradient descent 알고리즘이다. 가설을 세우고 가설과 실제값의 차이의 평균인 cost함수! 그리고 cost function에서 기울기를 변화시키며 최소화 하는 weight을 찾는 것이 Gradie..
import tensorflow as tf #이 경우에는 x1, x2, x3으로 세개뿐이지만 아주 많이 늘어난다면 코드가 복잡해지고 사용할 수 없다!x1_data = [73., 93., 89., 96., 73.]x2_data = [80., 88., 91., 98., 66.]x3_data = [75., 93., 90., 100., 70.]y_data = [152., 185., 180., 196., 142.] x1 = tf.placeholder(tf.float32)x2 = tf.placeholder(tf.float32)x3 = tf.placeholder(tf.float32) Y = tf.placeholder(tf.float32) w1 = tf.Variable(tf.random_normal([1]), name..
오늘은 하나의 변수가 아닌 여러 개의 multi-variable을 사용하는 Multi-variable Linear regression을 공부한다. Linear regression 위해 필요한 3가지를 다시 기억해보자.1. Hypothesis: 가설이 무엇인가 = 내가 어떻게 예측할 것인지를 나타내는 것이다. -> H(x) = Wx +b (weight와 bias)2. cost function: 가설이 정해졌다면 그것을 통해 내가 W, b를 잘 계산했는지 아닌지를 판단하는 함수이다. cost(W, b) = 1/m((예측값-실제값)합들의 제곱)3. Gradient descent Algorithm: cost를 최적화하는 알고리즘이다. -> 경사를 따라가는 알고리즘 예를 들어서 퀴즈1, 퀴즈2, 중간고사 점수를 ..
오늘은 'cost function을 어떻게 최소화해서 학습을 시킬 것인가'를 알아보도록 하겠다. 우리가 학습시키는 Hypothesis는 H(x) = Wx+b로 주어진다. 이걸 통해서 만들어 낼 수 있는 식 cost(W,b)는 예측값과 실제값 차이의 평균이다. 간략하게 만든 Simplified hypothesis를 통해서 계산을 해보자! H(x)=Wxcost(W) = 1/m((Wx[i]-y[i])제곱의 합) training data xy 11 2 2 33 위의 학습데이터를 통해서 cost(W)를 계산해보도록 하겠다.W=1일때 cost(W)는 무엇인가?-> 1/3((1*1-1)제곱+(1*2-2)제곱+(1*3-3)제곱) = 0W=0일 때 cost(W)는 무엇인가?-> 1/3((0*1-1)제곱+(0*2-2)제곱..
오늘은 두번째 강의을 들었다. 하루에 최소 하나씩 들으면 지루하지도 않고 재미있을 것 같다.우선 복습을 해본다. '몇 시간을 공부했더니 성적이 몇 점이었다.' 와 같은 데이터로 학습을 하여서 학생의 성적을 예측하자! 이 학습은 0점과 100점 중에 예측을 하는 것이므로 Supervised learning 중에서 regression이다.data를 통해서 training을 하면 학습된 모델이 생긴다. 이러한 모델을 사용한다는 것은 '시험 치기 전에 어떤 학생이 x시간 공부했는데 몇 점을 받을 수 있을까?'라고 묻는 것이다. 모델에 묻는다면 regression은 학습된 데이터를 보고 예측하고 답을 한다. Regression(data) x y 1 1 2 2 3 3 위의 표와 같이 regression을 위한 데이..